Skip to main content

Full text of "Commodore Computer Club 46"

See other formats


25 ottobre 1 9-87 


od , A b b . Post. G r 1 1 ! / 7 0 C R Gir Me "‘e 


i ■ rivirili defili nienti di sistemi Commodore 


Commodore 


MÌS»ìm 

;Egigj 

r ' *+£ 

- .. in 



- • ■ -'H 


F^"***-- 






IMMAGINE MAftSlLII & TERZANI - CIELO Dì RIETI 






M lettore di VR 
Vìdeoregistrare è giovane, 
dinamico, creativo. Di cultura 
e reddito superiore alla 
media, possiede spesso più 
videoregistratore, oltre 
all’Impianto hì-fi e al 
computer; nel tempo libero, 
non rinuncia a viaggi In Italia 
e all'estero, e a cinema, teatro 
e spettacoli sportivi in 
genere. Usa il 
videoregistratore non solo 
per i programmi tv o 
premasi, ma anche per 
riprendere i momenti felici in 
famiglia, per creare una 
videoteca personale. 
E tu, che lettore sei? 


L 'immaginazione 
al potere 




V ■' ' ' 







\ éf 







INSERTO 

PRINCIPI 

DI MULTI-PROGRAMMAZIONE 


RUBRICHE 

4 EDITORIALE 

DOMANDE/RI SPOSTE 


7 

Hardware 

Un monitor affidabile 




a 

T3 

91 

Insieme 

Una cedola importante 

Test di coppia 

m 

• •+ * * 

• 

a 

• 

19 

34 

Giochi 

Pronostici Totocalcio 

A che gioco giochiamo? 

4 


* 


27 

Grafica 

Un anno di grafica 

* 

• * 

a 

4 

30 

93 

Didattica 

Peek-Poke & Sys per C64 

Sotto il segno del trinomio 

* 

* 

• * 



32 

Telecomunicazioni 

La Banca in casa 

* 




41 

GW Basic 

MS-DOS e GW Basic. Versione 2 

• 




60 

Enciclopedia di routine 

Anche l’occhio vuole fa sua parte 

* 

* * 



65 

Anteprima 

tanti giochi e duo utility 



* 


70 

Spazio Amiga 

Ai vostri comandi 



« 



Dlwtfore: Acssartdro de Si "rene - CapOf^altmei Michele Maggi! 

R edaz tono/eoH a bot stori: Sarto Ajgcsl ni. Claudio Baloccò Cfrlo «• . j cura Efebei a 
Si mone Setto: a. Luig- Ca leg&ri Sergio Cornici, Sandro Certi, Umberto uosap:cchi3'i 
Ma-jiuiO Celi' Abate , Valerio- Ferri, Giancarlo ^ariani Roberto MaiigO Uizlo Men Mb^oo •*.-gv . 
Rciuùm Varassi, Antoni? Pastore.: Garin fiamp . Marco Saetta, W\o Sorgalo. 

Cani?o Toma. Gfovarìni Valli. 

segretaria di rtda 2 ione: Mau r a ÉSÒCSròJl GiWflCtt Arturo Caglia. Cabrala Galbosera 
Copertina: La Irto dì copertina è stala gemi L monte concessa da Canaio S 
Dtieiione* recezione» pubblicità: rie Fa* agonia, 75 - 20 ■■i? v - y.- ■ el 
Pubbl torti: v lano Leandro Nerigni (rtirettore vend lei, Cado Agwc Giorgi Suborn 
Gaudio TidCria - v.h 3 ^amagosla. 75 - 2:0 ■ 4 £ Milano - fai 02/8467346 

■ Ersilia Romagna: Spazio t - l'izza Roosevelt 4-40-23 Botola - si 05 •236--,79 , 

* Toscana. Marche, Umbria: Vare ito sr - via Rocari, 9 ■ Sfin Gfovanrv Valdfirno '.Af) ; e! 055/047 

* Lazio, Cameade: $pa 2 -.o Nuovo - via P. Fbscar, 70 • 00139 Rena -el. OÈ/BlOSfiTtì 
Segreteria: Marina Vantini - Abbcnamerrth Liliana Spina 

Tariffe; prezzo per copia L 4.000. Abbonamento annuo ' ' lascito I l- 40.000 cSte r r>: ■ -:.r>pi." 
Abbonamento cumulatrvo &iie rivista Compier a Commodore Computer Oub _ 60.000. 
i versamenti vanno n<jir zzati a. Systems Efaisor-ae Sii neri Etnie assegno tenebro 
p utilizzando il c/c postale n. 37952207 

Composizione: Systems Editoriale £r Feio-lito: Systems lc tifile Sii 
Stampa: Syiiems Ed irmi*/ Là Litografica Sr - Busto Arsizlo (Va) 

R«g1«erazfeni: Trionfile di Milano a 370 (tei 2/10/32 - D attore Responsahlc Michele Di r na 
Sp^r m fipp POSE gr Jh FubWfciiè interiora a’ 70% Oistnb.: MePe - y;a G. escano 32 - M lano 



Enciclopedia L.M. 

75 

ire nuovi comandi per operare 


in Basic 

93 

Protezioni 

Tecniche di Auto Run per CI 28 





EDITORIALE 


Le 000 

e una Commodore 


Le recenti notìzie dai mondo Commodore 
sembrano ribadire !a decisione di migliorare 

l’immagine dell'azienda 


u no degli aspetti più importanti 

del "nuovo corso" della Commodore, 
c la politica di riassetto della struttu- 
ra distributiva, il cui scopo c quello di 
arrivare ad un contatto diretto con 
l'u teme finale. 

Pct ottenere tali ambiziosi risultali, 
verranno identificati, attraverso una 
rigorosa selezione tra gli attuali ne- 
gozi trattanti prodotti Commodore, 
1000 esercizi commerciali che, ri- 
spondendo ai requisiti richiesti, ver- 
ranno qualificati come "Commodo- 
re PoinC. 

L'allestimento standardizzato in 
tutti tallo delle loro vetrine diventerà, 
entro breve tempo, un punto di riferi- 


mento preciso e facilmente indivi- 
duabile dal consumatore. Questi po- 
trà disporre dei numerasi servizi of- 
ferti tra cui, fondamentale, la prepa- 
razione tecnica di personale qualifi- 
cato, appositamente istruito da corsi 
specifici che verranno tenuti dalla 
stessa Commodore. 

I Commodore Pomi, naturalmente, 
avranno un rapporto diretto e p ri ci- 
liegiaio con la casa-madre che prepa- 
rerà. solo per loro, esclusive confe- 
zioni di prodotti informatici e garan- 
tirà, in anteprima, la presentazione 
di tutte le novità Commodore. 

Solo presso i Commodore Point, i- 
noi tre, saranno disponibili eventuali 


agevolazioni promozionali che do- 
vessero essere stabilite, e sarà possi- 
bile utilizzare gli stessi esercizi com- 
merciali come centri di raccolta per 
macchine da riparare sìa sotto che 
fuori garanzia. 

La Commodore ritiene che, in un 
m e re a to c os i co m peliti vo come quel- 
lo della microinfòrmatiea, avere dei 
centri specializzati di vendita lsì a il 
giusto mezzo perseguire, in maniera 
costruttiva, revolverai dei bisogni del 
consumatore; soprattutto in un mo- 
mento come questo, in cui l'informa- 
tica entra nelle case e negli uffici per 
risolvere i problemi di lutti i giorni. 







Colorì io atta risoluzione 

□ Quando cerco di alterare i colorì di 
un disegno tracciato in alta risoluzio- 
ne, a volte tutto funziona a dovere, al- 
tre volte Toperazione sembra “distur- 
bare” pìccole aree adiacenti a quella 
m ai poi a t a, con La creazione di effetti 
indesiderati: creazione di scalette co- 
lorate, modifica dei colori di altre linee 
adiacenti e così via. Quale può essere 
la causa? 

(Massimiliano Di Massimo - Somewere) 

* Non preoccuparti: è tutto regolare. 
Purtroppo i computer domestici 
(C/64, C/128 t C/16) hanno una ge- 
stione della grafica un po’ particolare 
che non può essere modificata. 

Nonostante Fargo mento sia com- 
plesso, cercherò di riassumere breve- 
mente la tecnica adoperata per colo- 
rare lo schermo in alta risoluzione, 

Dunque, iniziamo col ricordare 
che l’area video che si osserva quan- 
do si “entra" in alta risoluzione è for- 
mata da 64000 puntini che, a loro vol- 
ta. sono Hm magi ne di 64000 bit che, 
a loro volta, sono raggruppati in 
gruppi di 8 in 8000 byte adiacenti (la 
cosiddetta “Pagina grafica 1 '). 

E fin qui tutto dovrebbe esser chia- 
ro (e noto), 

I! colore di ciascun puntino, però, 
pur potendo variare a piacimento 
nella gamma del colori disponibili 
(16) è rigorosamente legato" alla 
sorte di altri puntini ad esso adiacen- 
ti, e vedremo subito il perchè. 

Se, infatti, si volesse dotare ciascu- 
no dei 64000 puntini della possibilità 
dì venir colorato con uno qualunque 
dei 16 colori possibili, si dovrebbe 
rendere disponibile un’ulteriore area 
di memoria Ram che rappresenti, per 
ciascun puntino, il colore. 

Siccome i colori sono 16, si rende- 
rebbero indispensabili (vedi calcolo 
binario) 4 bit perla rappresentazione 
di ciascun puntino per un totale di 
16x64000— 1024000 bit che, pur se 


raggruppati in byte lunghi 8 bit, ri- 
chiederebbero tuttavia ben 128000 
byte; e questo, bada bene, solo per 
memorizzare le informazioni relati- 
ve al colore! 

Per evitare la spesa di un’area così 
vasta di Ram (non dimenticare l’epo- 
ca in cui il C/64 fu progettato e realiz- 
zato) i progettisti della Commodore 
decisero di ricorrere ad una drastica 
limitazione assegnando, per la me- 
moria colore, solo 1000 (mille) byte. 

lì trucco si basava sulla considera- 
zione che, nel modo testo, una cella 
video destinata ad ospitare un carat- 
tere alfanumerico, è formata da una 
griglia dì 8x8 puntini elementari ed è 
relativa ad un byte che, come tutti i 
byte, può contenere un valore com- 
preso tra zero e 255. 

Orbene, è sicuramente possibile 
suddividere l’area del video in alta ri- 
soluzione in mille ( = 25 righe x 40 co- 
lon ne) minì-aree che. in modo testo, 
corrisponderebbero, ciascuna, ad un 
carattere visualizzabile. 

Ogni cella che, in modo testo, può 
ospitare un carattere alfanumerico, 
rappresenta invece, in modo alta ri- 
soluzione, il colore della stessa por- 
zione secondo un codice particolare: 
quattro dei suoi otto bit rappresenta- 
no il colore dei pixel accesi (posti ad 
1), gli altri quattro, invece, il colore 
dei pixel spenti (posti a zero). 

Tali codici, però, sono relativi al- 
l’intera area di 8x8 puntini che di- 
pendono dalla locazione colore in- 
teressata. 

Ne consegue, dunque, che in una 
stessa cella vìdeo in alta risoluzione, 
che in modo testo conterrebbe un ca- 
rattere, puoi disporre di due soli colo- 
ri che possono benissimo esser diver- 
si dai due colori disponibili nelle cel- 
le adiacenti. 

1 bellissimi disegni multicolori che 
spesso ammiri in schermate grafiche 
in alta risoluzione, vengono effettua- 
ti tenendo conto di tale particola rità e 
manipolando con perizia la modifi- 


ca dei colori passando da una cella 
all'altra. 

Non proseguo il discorso sulla tec- 
nica multicolor (che porta i colori a 
quattro, ma dimezza la risoluzione) 
ma ne approfitto per ricordare che 
con computer modesti è possibile 
realizzare “cose" modeste. 

Per un vero CAD devi, per lo meno, 
passare all Amiga. 

Fast inattivo 

O Ho digitato i programmi grafici 
Quark e Random Project pubblicati 
sul N.43 (a proposito: voglio congratu- 
larmi con ì bravissimi autori) ma il mio 
C/128 si blocca se è presente, nella ri- 
ga 320, l'istruzione Fast, mentre fun- 
ziona perfettamente se la elimino. Co- 
me mai? 

(Adriano Docci - M. dì Campo) 

* Grazie per i complimenti (che giro 
pari pari agli autori Mauro e Stefano 
Ciurli di Roma) e passiamo al que- 
sito. 

Il comando Fast costringe il C/128 
ad elaborare in modo più veloce gra- 
zie alla diversa frequenza con cui 
viene eccitato il quarzo. Per far que- 
sto, purtroppo, è necessario un picco- 
lo sacrificio: bisogna rinunciare alla 
gestione del video che, non appena sì 
attiva il comando, scompare, o me- 
glio viene “spento" finché non viene 
incontrato il comando Slow che ri- 
pristina le originarie condizioni di 
velocità. 

Morale: benché il comando Fast in- 
crementi la velocità di elaborazione, 
è necessario dar tempo al computer 
affinchè la compia per intero. E' 
quindi probabile che la tua impa- 
zienza di osservare i risultati sia tale 
da ritenere difettoso il comando; op- 
pure che hai dimenticato dì digitare 
il comando Slow (riga 530) che ti per- 
mette dì osservare ì disegni dopo che 
sono stati tracciati. 


Commodore Computer Club - 5 





Mappa memoria 80 colonne 

□ In quale zona di memoria si trova la 
pagina video dedicata ai caratteri nel 
C/I2S in modo SO colonne? 

(Christian Capone - Torvajanìca) 

* La gestione del video del C/128, sia 
in bassa che alta risoluzione, non ri- 
calca 3e orine dei computer più picco- 
li e l'operazione di visualizzazione 
non si accontenta di semplici co- 
mandi Poke. 

In certi casi, addirittura, è necessa- 
rio attivare via software il chip video 
e passargli i parametri opportuni per 
ottenere la conseguente visualizza- 
zione di immagini, 

Purtroppo il modesto numero di ri- 
chieste relative alla gestione nel mo- 
do 80 colonne, finora pervenute in 
Redazione, mi impedisce di assegna- 
re ad uno dei collaboratori il compito 
di scrivere un articolo specifico, 

A meno che non giunga una valan- 
ga di lettere di incitamento... 



Esperienze 

□ Che cos’è un sistema esperto? 

{Matteo Bacca n - Cannotto, No) 


* La possibilità offerta dai moderni 
computer di elaborare, senza affati- 
carsi, milioni di operazioni, confron- 
ti e verifiche, ha spìnto gli informatici 
a sviluppare quella che, da qualche 
decennio, viene definita “Intelligen- 
za artificiale" (abbreviata: ÀI) e che 
ora tendono a chiamare, meno pre- 
suntuosamente, 'Tecnologia della 
conoscenza" 

Un sistema esperto consiste nel l'as- 
segna re una certa quantità di infor- 
mazioni, catalogabili nel modo più 
disparato, e rintracciare, in seguito, e- 
veniuali legami ohe le accomunano. 
Naturalmente il problema più im- 
portante è proprio il modo di inse- 
gnare al computer ad effettuare le ri- 
cerche e, soprattutto, a memorizzare 
le varie procedure via vìa eseguite in 
modo da far tesoro dev'esperienza 
accumulata ed evitare eventuali erro- 


ri già commessi. 

Un esempio di sistema esperto (in 
scala molto ridotta) è quello, pubbli- 
cato più volte sulle riviste del settore, 
in cui si insegna al calcolatore a rico- 
noscere un animale in base alla de- 
scrizione "indiretta" (mediante ri- 
sposte “sì” e ”no”) che l'utente ha 
compiuto in precedenti colloqui con 
il computer. Supponiamo che il com- 
puter abbia in memoria le caratteri- 
stiche di una decina di animali e che, 
tra questi, sia assente il gatto. Indi- 
cando con TU Intente e “C" il calco- 
latore, ecco un esempio di colloquio 
che viene svolto tra “U” e “C”: 

C: E’ un quadrupede? 

U: sì 

C: Vive anche in acqua? 

U: no 

C: E erbivoro? 

Ut no 

C: È un eanide? 

U: no 

C: è un felino? 

LI: sì 

C: Ha la criniera? 

U: no 

C: F la tìgre? 

U: no 

C: Come si chiama I animale? 

U: Gatto 

C: in che cosa il GATTO differisce 
dalla TIGRE? 

U: è domestico. 

Da questo momento il calcolatore 
avrà in memoria le caratteristiche dì 
un nuovo animale (gatto) che prima 
non aveva a disposizione: ha quindi 
acquisito esperienza nel senso che, 
ripetendo il gioco, rifarà le stesse do- 
mande, ma chiederà “E 1 un gatto?” lì 
dove prima aveva chiesto "Come si 
chiama l'animale?” 

Come puoi intuire, un vero e sofisti- 
cato programma di 1 A che sia degno 
di chiamarsi 'Sistema esperto” può 
arrivare a gradi di sofisticazione e- 
normi con applicazioni nei campi 
più disparati: previsioni del tempo, 
dell'andamento della borsa, del ri- 
sultato delie elezioni e così via. 



Easy Script 

EU Sono in possesso del fascicolo 4 1 dì 
C.C.C. che contiene l'inserto dedicato 
interamente all’uso di Easy Script, Co- 
me posso trovare un maggior numero 
di informazioni sul potente word pro- 
cessor della Commodore? 

(Luca Gatti - Attese) 

* L'inserto cui ti riferisci era destina- 
to a coloro che, pur possedendo il 
programma, non erano in grado di u- 
tilizzarlo al meglio a causa di alcuni 
malfunzionamenti dovuti ad imperi- 
zia d'uso. 

Se, quindi, desideri entrare in pos- 
sesso delfelenco completo di tutti i 
comandi disponibili, non ti rimane 
altro che acquistare, da un qualsiasi 
rivenditore autorizzato, la confezio- 
ne originate del software che contie- 
ne un esauriente libretto di istruzioni 
in italiano. 

Da disco a nastro 

□ Vi sono alcuni giochi su disco che so- 
no formati da più dì un programma. Ho 
saputo che è possibile trasferirli su 
cassette con alcune istruzioni Poke. 
E’ vero? 

(Maurizio Frustarli - Terranuova) 

• Sì e no. Mi spiego meglio: nei pro- 
grammi formati da più lì le. il primo 
di questi, in genere, contiene alcune 
istruzioni che provvedono ad inseri- 
re particolari codici di protezione 
che impediscono l'interruzione del 
gioco e, quindi, la possibilità di 
registrarlo. 

All’inferno dello stesso file, inoltre, 
sono presenti altre istruzioni che abi- 
litano, o meno, il caricamento degli 
altri file presenti sullo stesso disco. 

Saranno certamente presenti, da 
qualche parte nel programma, le i- 
struzioni che "legano" ì file tra loro o 
altre che sovrappongono le istruzio- 
ni necessarie ad altre che non servo- 
no più. 

Siccome ogni gioco ha una sua tec- 
nica particolare di protezione (e dì 
fusione di file) non è possìbile deter- 
minare un sistema valido universal- 
mente, nè per realizzare un unico file 
nè, tantomeno, per effettua re trasferi- 
menti su cassetta. 


6 - Commodore Computer Club 



Modem e smembramenti 

□ Ho notato che alcuni negozi di com- 
puter smembrano le recenti confezioni 
telematiche della Commodore c ven- 
dono separatamente i vari componen- 
ti: computer* drive, modem, Geas. Se 
dovessi acquistare un apparecchio pro- 
veniente da una confezione telematica, 
pensate che avrei problemi con la 
gara n/ia? 

(Ijiigi Casagrande - Livorno) 

(Dugo Giorgi - Gela} 

* La C ommodore Italiana Janciando 
sul mercato le due confezioni telema- 
tiche, si proponeva di offrine f oppor- 
tunità di entrare nel meraviglioso 
mondo del la trasmissione dati e forse 
non immaginava che alcuni nego- 
zianti, per favorire i propri clienti, 
provvedessero a separare i vati com- 
ponenti della confezione stessa. 

Tale modo di comportarsi, a onor 
del vero, dipende soprattutto dal fat- 
to che la Commodore ha deciso di 
commercializza re in un secondo mo- 
mento il solo modem e di riservare la 
fornitura del Goos solo ai neo- 
posse s sori del C/64. 

Per la garanzia, comunque, stai 
tranquillo: ogni componente della 
confezione è dotato della sua garan- 
zia che rimane validissima anche se 
hai acuistato il prodotto separata- 
mente dagli altri. 



Differenze 1 

ri 

□ Che differenza c’c tra il 1541 ed ìi 
1571? Che differenza c’è tra l’opera- 
zione di Reset e lo spegnimento (e suc- 
cessiva ri accensione} di un computer? 

(Alessio Trovi i - Rvmu) 

• Il 1571 è un drive che, olire ad altre 
caratteristiche (tra cui una maggior 
velocità) possiede due tedine dì Icttu- 
ra /scrittura e, di conseguenza, utiliz- 
za entrambe le facce di un disco. Na- 
turalmente deve essere collegato ad 


un computer che lo utilizzi in tale 
modo, altrimenti funziona come un 
semplicissimo L54L 11 computer in 
questione è il C/128 che, "accorgen- 
dosi" di essere in presenza di un 1571, 
lo utilizza al meglio delle sue possibi- 
lità. Collegato ad un C/64, invece, si 
limita a simulare le funzioni del 
154L 

Per ciò che riguarda le operazioni 
di Reset, invece, ceda dire che il vero 
c totale Reset è costituito unicamente 
dallo spegnimento e riacccnsionc 
della macchina. In molti casi, co- 
munque, la pressione del tasto Reset, 
oppure il ricorso ad una Sys partico- 
lare, provoca lo stesso risultato. Con 
alcuni programmi, tuttavia* {specie 
se protetti oppure scritti in linguag- 
gio macchina) non ha alcun effetto. 

In definitiva, vi sono tre vie per re- 
sultare un computer: la prima, più 
blanda, è la Sys opportuna; se questa 
non funzionai necessario premere il 
tasto Reset; in caso negativo si spe- 
gno e si riaccende la macchina 

Differenze 2 

□ Che differenza c’é tra Poke X* 
Peek(X)Artd 254 e Poke X,0 e simili? 
Ghe cosa cambia* msomnia, se invece 
dì trascrivere un risultato da calcolare 
immetto il risultato finale? 

(Pierluigi A lemmari - Angem) 

• Non cambia assolutamente nulla, 
anzi la velocità di elaborazione au- 
menta, dal momento che vi sono me- 
no calcoli da effettuare. IE motivo per 
cui trovi spesso una forma sintattica 
più complicata è comunque un al- 
tro. 

Molto spesso, infatti, lavorando 
con istruzioni Poke, risulta necessa- 
rio modificare solo alcuni dei bit re- 
lativi ad una cena locazione di me- 
moria. Le varie operazioni And e Or 
servono, quindi, a fare in modo che 
sia interessato solo quel bit c non 
altri. 

Facciamo un esempio: sai benìssi- 
mo che con Poke 1024,1 compare, in 
alto a sinistra dello schermo del 
C/64, il carattere "A”; orbene con,,, 
Poke 1024, Peek(1024) or 128 
...non fai altro che sellare il settimo 
bit che, nel oodìce di schermo, rende 
in Reverse il carattere visualizzato. 


Lo stesso effetto, ovviamente, lo po- 
tresti ottenere con: 

Poke 1 024, 1 29 

La differenza sostanziale consiste 
nel fallo che mentre con il valore 129 
ottieni la visualizzazione in reverse 
del solo carattere "À" con l’operazio- 
ne OR \ 28. invece, sei in grado di ren- 
dere ili re verse qualunque carattere 
sia presente nella locazione video 
1024. 


Ovalizzazione di cerchi 

□ lavorando in alta risoluzione riesco 
a disegnare cerchi perfetti che pero* ri- 
portati su carta con operazioni di hard 
copy, diventano ellissi. Quale ne è la 
causa? 

(Aldo Manunm • Lecce 1 

m La cella video dd C/64 è formata da 
una griglia di 8x8 puntini elementari 



GEMINI SOFT 


Vi Lt'.li-rtiipo Vl.U 

Cojm i nastri proietti d^i védovi?./ alari prò usali 
01 tìjlij. Óonntclipn, l'urbu 2Uj>. Daspfi. Turbu/HG. 
i.a vetrone nfn cupi j nnM.ro i programmi 
proietti (Un ^ n limi Oi-NCfith, anche ne mudifiViiii. 
G fNtisce i fili; ni u li il Oliti, hcudtfltfj. etc. SuteM 
Sia ramno od lotto. du: e,iG. 

E. j versione nldlt trasferisce inv^ su dicco, een/u 
problemi. Com precide cn olire un cu pianate ner rde 
generati tki v.irlueee ih opri «freezer'' 
l'er ulteriori i nfe nmwt i n n i seriveicei >ubito vi 
invieremo Mr.i nulamente ’J'Èjfbo Iderrliffear, i. 
prun;rAfiirtì,i che rrUlivrdlT? la protezione uOìiz/iiE.i 
Ogni ai n gol» versione so cas vetta a sole lue JQ.OOT, 
compì ci ii di isiru./iojii e hJì iìm-iupì d'uto VTastei- 
tS|H' V2.(i è urr'cselusjvjl della Gemini Snf|. 

M i vitati es ti. ] 

I tu mi ideile raccolta Ui ulilily di dominio pub- 
blio, corredali Od un elegante manuale di ben ~!$ 
P-’ teine. Uave evtesi. prog ritmili er’* ;iid, toma tori k - 
Etml pur disco. macro-asserti bl ter. mOnilur, aprite 
ti j Eh a Pi i r i .i C il Stt disco, se n za p t otc/ i o m . .1 

lire 30,000 

UuitiN. CiU.ilnjio NoflUiire, Iva ine fu Si». Spedi/: ioni 
ecun I r»s H-cjf mi , spinse ptisiitJi a pus tra i.sictu, 

GEMINI SOFT 

Vkm I iV| ijjliori, i n - 8Ut2SS. M AMIA A VfCO CCt> 


Commodore Computer Club - ? 



3 a cui distanza reciproca è hi stessa 
sia se misurata in orizzontale sia se 
in verticale. 

Alcune stampanti, invece, pur a- 
vendo una matrice analoga, non la* 
sciano la stessa distanza lungo i due 
assi; ne consegue la deformazione la- 
mentata che, per essere eliminata, co- 
stringe l'utente a disegnare, su scher- 
mo, ellissi che, deformate dalla stam- 
pante, ridiventano... cerchi. 



Archivi universali 

□ I file creati con Ùbase EI (C/128 in 
modo CP/M) possono essere utilizzati 
da altri database? 

(Gabriele Giamboni ini - Svizzera) 

* I file non sono altro che una se- 
quenza di caratteri, memorizzati su 
disco secondo un codice particolare 
che è quello specifico del software 
adoperato. 

Molti programmi, soprattutto di 
word processing, generano file se- 
condo un codice praticamente uni- 
versale; naturalmente alcuni coman- 
di di formattazione, registrati spesso 
insieme ai file, non hanno effetto con 
altri W/p oppure provocano inchio- 
damenti del sistema, 

Da un po' di tempo, però, molte 
software house cercano dì realizzare 
programmi che, pur se profonda- 
mente diversi tra loro, generino file di 
utente che possano essere richiamati 
facilmente anche da altri package, 

I programmi in grado di elaborare 
file provenienti da software profes- 
sionale, comunque* riportano bene 
in vista, sulla confezione posta in 
vendita, tale opportunità. 

II problema, semmai, è un altro: bi- 
sogna essere abbastanza fortunati da 
trovare un package che non solo sìa 
tn grado di effettuare i caricamenti 
che desideri, ma, soprattutto, che uti- 
lizzi un formato software dei dischet- 


ti compatibile con quello richiesto 
dal drive che usi con il tuo C/128. 

Stampa leggera 

□ La mìa ÌYIps-803, anche con nastri 
nuovi, stampa caratteri flebili; è possi- 
bile far stampare due volte uno stesso 
rigo in modo da renderlo più leg- 
gibile? 

(Ennio Baiocchi - Roma) 

• In li nea teorica è possibile, ma sa- 
rebbe necessario un software specifi- 
co da incorporare in ogni pro- 
gramma. 

Con i programmi professionali 
(W/p, data base e così via) non c'è 
niente da fare. 


Ingrandimenti 

□ Quali sono le Poke misteriose che 
consentono di ingrandire i caratteri del 
mio C/128? 

(Pietro Pace - Mono poh) 

* Non esistono Poke che consentano 
di ingrandire i caratteri visualizzabi- 
li; è infatti necessario un apposito 
programma che riporti su video (o su 
stampante) l'opportuno ingrandi- 
rne rito. 

Le schermate, che spesso vedi in va- 
ri programmi, e che riportano mes- 
saggi di altezza c forma più o meno 
differenti da quelle alle quali sei abi- 
tuato, sono dovute a particolari su- 
broutine, incorporate negli stessi 
programmi (e difficilmente “estraibi- 
li') che servono a rendere più sugge- 
stive determinate immagini. 

Solo f Amiga, il recente computer 
della Commodore, permette, in alcu- 
ni casi, la selezione tra vari set di 
caratteri. 

Lavorando con alcune stampanti 
sofisticate è invece possibile, con una 
certa facilità, ottenere set di caratteri 
alternativi, anche di varia gran- 
dezza. 



Pet Speed C/I28 

□ Mi sono procurato il compilatore 
Pet Speed per C/l 28 ma, specialmente 
in grafica, le schermate riprodotte dal 
programma compilato sono molto di- 
verse da quelle ottenute con il pro- 
gramma sorgente in Basic, Quale può 
esserne la causa? 

(Federico Solla - Napoli) 

• Le notìzie che fornisci sorto poco 
dettagliate: per saperne di più dovre- 
sti inviarci il dischetto contenente sia 
il sorgente che l'oggetto, 

E probabile che, nel programma in 
Basic, vi siano Poke "strane" o che, 
peggio, invadano fa rea su cui opera 
Ì1 compilatore. Se questo non è il tuo 
caso, purtroppo, non posso esserti di 
alcun aiuto. 



Banchi del C/128 

□ Che cosa sono i banchi di memoria 
del C/ 128 (che il C/64 non possiede) e 
come é possibile che un microproces- 
sore ad otto bit riesca a gestire una me- 
moria più ampia di 64 K? 

(Cristiano Mari ordì a - V.Equense) 

• Il C/128 può operare su molti ban- 
chi di memoria da 64K ciascuno. E J 
ovvio che molti di questi sono “vuoti" 
nel senso che il computer, nella sua 
confezione originale, ne occupa solo 
due: gli altri sono liberi per espansio- 
ni dì R^irt, varie cartucce e così via. 

Non è esatto dire che il C764 non di- 
sponga di più banchi. In effetti il 
C/64 ha due banchi di memoria a sua 
disposizione, benché non utilizzi il 
secondo per intero. Si pensi, infatti, 
che sono presenti 64K Ram e, paral- 
lelamente, “coesistono’' altri K di me- 
moria Rom {per non parlare dei 
Chip I/O e sìmili). 

Per selezionare uno dei vari chip, 
che sono costretti a condividere gli 
stessi indirizzi (ma che devono fun- 
zionare sdetti v am ente, uno solo alla 
volta), il microprocessore invia un 
particolare segnale che abilita uno 
solo dei chip mentre* co n tempora- 


8 - Commodore Computer Club 



Una Tartaruga Non Può 
Stare Al Passo Con Una Lepre. 

Non trovate assurdo avere un computer che corre come una 
lepre e usare una stampante lenta come una tartaruga? 
Seikosha stampa a ben 420 caratteri per secondo. Cioè a una velocità di gran lunga 
superiore alla stragrande maggioranza delle stampanti oggi in commercio. Questo 
vuol dire migliorare le prestazioni e aumentare la velocità produttiva del computer. 
Di ogni computer. Seikosha non solo corre come una lepre, ma offre anche un'ec- 
cezionale qualità di scrittura e una serie di prestazioni che ne fanno la stampante 
più evoluta della sua categoria. Le sue caratteristiche tecniche parlano chiaro:* 



- Compatibilità con i maggiori sistemi 



Velocità di scrittura 420 CPS 
- Silenziosità 

- Ampia gamma di caratteri 

^ | Se aggiungete Tef- 

^ ficiente e tempe- 

. stiva assistenza 

\ tecnica della 
\ IVk \ Claitron, 

Ik \ saprete 


Questi dati sé riferiscono 
al Enc-delio Seikosha 
business Printer BP- 5420 Al 


□ tSTRlÈUTO^e PER L'ITALIA 


VIA GÀLIARATE, 21 1 . 20121 MILANO - TEL. [02) 3010091 r.o. - 3010081 r.o - TELEX 313843 CLAITRON 


















® r OO/o 

°» r u N z K>Nr 

Olp^T OPffr 

*effu?£s v AL 


Personal computer è la rivista Systems per gii utenti Commodore. MSX, Sìncfair. 
Non solo tre riviste per tre diversi utenti: Personal Computer è anche un’idea nuova 
per far comunicare tutti gli hobbisti. Personal Computer: 128 Kbytes di rivista, tutti i 
mesi in edicola, L'abbonamento cumulativo a Computer e Personal Computer costa 
sofo L. 65,000, 



// mercato si evolve. 
Anche noi. 







RoqnAwon i >\ y oionis 



Ulta volta * . • 

nel branco ••• 



* Toia.msnte oorr, palaie PC/XT 3M 

* m croprOce&sore hfcgl $Qfiti 

* memoria RAM 556 Kb espandibile a 640 Kb su! a 
piastra base 

* memoria ROM -8 Kb (BIOS) espandibile 64 Kb 

* scheda madre con fl s-to! di espansione 

* scheda grafica monocromatica ad ala ri-scuzione 

1720x346 punii) 

* porla paratola per collegamento stampante 

* tasterà italiana ASCII con 84 tasf e IO (asti 
funzione o USACI! 

■ jrio o cue d'itfe Siim 5" 1/4 da 360 Kb lodsco rigdo 
di diverse capacità) 

* alimentata re 135 W ■ 230 Voh 

* dlmension 500 x 41 D x 142 mm 

r pesò: n Kg 

* sistemi operstiv. supportai . tufo quel i cel 
PC/XT IBM 


* Tota mense corri pati bi e PC/AT BM 

* microprocessore nte; 802 -6: trasferimento dati a 1t> 
bif; ind=rczamento a 24 bit 

* memoria RAM 512 Kb espand bile a 5 MB 

* scheda madre con fi steì d esoanscne 

* scheda grafica monocromatica ad alta risoluzione 

(720x346 spumi) 

* pela paratela pe? collegamento stampante 

* spie luminose su a tastiera per "caoss look", ^num 
look'' e "scroti look" 

4 orologio, ca.endar.o e configurazione di sistema con 
CMOS RAM e reia’iva s imgntszione d riserva con 
daterà eterne 

■ serratura ci s carezza per 'accesso al ' j n rà d eiabc 
razione 

* drive F-zepv disk 1.2 Mo 

Massima Espandibilità con dischi o schede 





neamente. “addormenta' " tutti gli 
altri. 

La gestione di tale procedura, oltre 
ad essere piuttosto complessa, risul- 
ta, in ultima analisi, molto lenta ed è 
questo li motivo per cui. nei compu- 
ter moderni, si preferisce ricorrere ad 
altri microprocessori in grado dì in- 
dirizzare ì vari dati senza problemi 
di selezione di banchi. 



Titolatrice 

□ Perchè non provvedete a scrivere un 
programma che visualizzi scritte scor- 
revoli, multicolori e dì varia grandezza 
che possa essere adoperato come tito- 
latrice per i videoregistratori? 

(Antonio Poli meno - Ma! ino) 

* Molto tempo fa apparve un mio 
programma sulla rivista Micro & 
Personal Computer (N. 39 marzo ’84) 
che consentiva di riprodurre su video 
messaggi piuttosto ingranditi. 

Per quell'epoca, forse, il program- 
ma era sufficientemente valido ma, 
con il passare del tempo, sono venuti 
alla luce numerosi altri software che 
consentono di visualizzare messaggi 
di notevole eleganza, 

I! ricorso ai vari Print Shop, Print 
Master e sìmili può rappresentare, 
parse non sono stati creati per lo sco- 
po indicato dal nostro lettore, una va- 
lida opportunità per abbellire e per- 
sonalizzare le videoregistrazioni. 

Se qualcuno ritiene di aver scritto 
un programma sufficientemente in- 
teressante, può inviarcelo per il suo 
inserimento in “Directory ", il di- 
schetto che vendiamo mensilmente 
solo per corrispondenza. 

Ri locare programmi in L.M. 

□ Come si può rilocare un programma 
scritto in linguaggio macchina? 

(Piergiorgio Dell Agosti n - Belluno) 

* La teoria della tecnica di ri locazio- 
ne sembrerebbe piuttosto semplice: 
individuare le istruzioni relative ad 


indirizzi assoluti e modificare Largo- 
mento in modo che "punti )T al 
nuovo indirizzo. 

Passando dalla teorìa alla pratica, 
però, la faccenda si complica pauro- 
samente, ed indico qui di seguito solo 
alcuni dei motivi: 

- necessità di distinguere tra indirizzi 
assoluti da mantenere inalterati (co- 
me quelli relativi alle Rom) c quelli 
che, invece, appartengono alla routi- 
ne Lm. (e, quindi, da modificare). 

- necessità di individuare, alf interno 
del programma, la presenza di even- 
tuali tabelle, da lasciare, ovvia- 
mente, inalterate. 

- necessità di considerare eventuali 
sovrapposizioni net casi in cui si vo- 
glia rilocare di pochi indirizzi un 
programma di lunghezza maggiore 
del “salto ' impostato. 

In definitiva è molto, molto compli- 
cato rilocare un programma Lm, di 
cui non si possieda il disassem- 
blato commentato. 

La faccenda cambia totalmente se, 
invece, il programma Lm, è scritto 
dall’utente stesso. Sono oggi disponi- 
bili programmi di notevole sofistica- 
zione (Merlin, Macroassembler e 
tanti altri) che consentono di scrivere 
un programma in Assembly e pre- 
sentano facilitazioni di tutto rispetto 
tra cui, appunto, la rilocazione, fin- 
seri mento di nuove istruzioni, fallo- 
cazione di tabelle, il calcolo automa- 
tico di salti condizionati e non, l’uso 
delle Label. 

Oggi, insomma, nessuno lavora più 
in linguaggio macchina “puro 1 ’ e fu- 
so di uno strumento più sofisticato 
(come, appunto, gli assemblatori) è 

praticamente indispensabile per chi 
intenda lavorare in Lm. senza diffi- 
coltà eccessive. 

Strano errore 

□ Con il seguente progr attinia,,,: 

10 For H— 1 to 16 
20 Poke H,40 
30 Next H 

M*il mio C/16 ìndica “Syntax error in 
30’\ Che cosa succede esattamente 
quando nella locazione 16 viene im- 
messo il valore 40? 

(Luca Acellì - Villanovezza) 


• Le prime locazioni di memoria dei 
computer Commodore sono riserv a- 
te al Sistema Operativo ed ai l’inter- 
prete Basic; l'utente non dovrebbe 
mai modificarne il contenuto. 

Spiegare esattamente che cosa suc- 
cede è un po‘ problematico; mi limi- 
terò a dire che le locazioni citate ser- 
vono al tuo C/16 come riferimento 
per le varie elaborazioni. E’ intuitivo 
che se provvedi a “forzare” il loro 
contenuto, il computer non sì racca- 
pezza più e si comporta in modo stra- 
no. emettendo anche segnalazioni di 
errori che, iti realtà, non sono presen- 
ti nel listato. 

Musicalmente 

□ Tento da molto tempo di scrivere un 
programma che consenta dì eseguire 
musica a più voci con il mio C/64, ma 
trovo molta difficoltà a completarlo, 

(Alessandro Serigner, dodicenne di Trieste) 

• E ti credo! Un programma del gene- 
re dovrebbe essere scritto in linguag- 
gio macchina da chi conosce alla 
perfezione non solo le peculiarità 
delle note musicali, ma anche la ge- 
stione del suono con il C/64. 

Ti consiglio di utilizzare uno dei 
tantissimi Music Editor che circola- 
no tra gli appassionati, oppure di stu- 
diare con molta attenzione tutti gli 
articoli che finora sono apparsi sulla 
nostra rivista. 


Miracoli 

□ Vorrei sapere se con il vostro emula- 
tore Uw-flasìc è possibile emulare an- 
che le funzioni del computer IBM 
370. 

(nome omesso per carità cristiana) 

* Avevamo intenzione dì realizzare 
qualcosa del genere, ma abbiamo in- 
contrato difficoltà nel richiedere 
consigli specifici al Padreterno, 



Commodore Computer Club - 13 



Risposte Rapide 


Problemi con Header 

Ho provato ad adoperare la sintassi 
che tu hai utilizzato nella formatta- 
zione dei dischetti, ma non ho i neo ti- 
tano i neon venienti di sorta. Sei sicu- 
ro che, sullo stesso rigo del comando, 
non fossero presenti altri caratteri 
che generino il Syntax Error la- 
mentato? 

(A f nonio Merchi ori - Mestre) 

Archivio codificato 

Ilo già avuto modo di ricordare, m 
una precedente risposta, che per usa- 
re correttamente il programma GE, 
DA. FI, (apparsosi! C.CC. N.37) è in- 
dispensabile che almeno un campo 
sìa codificato. 

Nc approfitto per suggerire, a tutti i 
lettori, di leggere SEMPRE questa 
rubrica: molto spesso troverete rispo- 
ste ai vostri dubbi. 

(ho Neh “ Pi) ni edera) 

Software professionale 

Per procurarsi il software profes- 
stonale (c altro software in generale), 
ti consìglio di rivolgerti ai nostri in- 
serzionisti che vendono software per 
corrispondenza, oppure a pumi di 
vendita di tua fiducia. 

(Paolo D'Agapiti - Veileth) 

Non per C/16 

1 programmi dell articolo “Sprite i- 
stm itivi” apparso sul N.41. possono 
girare solo sul C/128 perchè si basa- 
no sulla gestione degli sprite che il 

C/I6 (come il Plus/4) non possiede, 
(Massimo Bregmi! - Gorizia) 

Leggere* leggere, leggere 

Stavolta sono cattivo: lì metodo per 
determinare vìa sof tware se una peri- 
ferica è accesa oppure spenta c già 
stato descritto in questa stessa rubri- 
ca nei n urne ri 40 c 42; ed è anche usa- 
to nel programma ' Botte piena../' 
pubblicato sul N.4U Morale; rileggi 
gli arretrati (che assicuri di possede- 
re) e, visto che ci sei, leggi anche gli 
altri articoli che hai trascurato/ 
(Norberto Baroni - Vena rogo) 

Software offresi 

A te, come a tutti gli altri lettori in 



gamba, non posso che rinnovare l'in- 
vito a telefonare (02/84.67.34.8) per 
stabilire se il software prodotto ri- 
sponde alle nostre esigenze. 

(Andrea - Sornewere) 

H/copy C/128 

Sul N.43 della nostra rivista c ap- 
parso un programma (Quark) che 
contiene una routine in L.M. per la 
riproduzione su carta delle scherma- 
te in alla risoluzione del C/l 28 in mo- 
do 40 colonne. 

Per ottenere fbard copy nel modo 
80 colonne puoi utilizzare il nostro 
software "Graphie espander’' vendu- 
to su disco solo per corrispondenza 
che, oltre alla opzione citata, rag- 
gruppa numerosi comandi Basic per 
la gestione delia grafica in alta risolu- 
zione del C/128 in modo 80 co- 
lonne. 

(Piero Emanuel - Giovi nano) 

il nostro software 

Il software che noi offriamo ai no- 
stri lettori è solo quello descritto nelle 
pagine pubblicitarie che compaiono 
su C.CC, Per procurarti i programmi 
che non fanno parte del nostro elen- 
co devi rivolgerti ai negozi spe- 
cializzati, 

(Alessandro Ungati - Leruini) 

Programma carino 

Il programma che consente di ri- 
portare su carta l'output che hai in- 
viato è simpatico e interessante. Con- 
tattaci telefonicamente per fissare 
un incontro. 

(Manco Castelli - Monza) 

Modem Commodore 

li modem Commodore diffuso re- 
centemente nei punti di vendita auto- 
rizzati può essere applicato solo al 
C/64 e al C/128. Non può quindi fun- 
zionare sugli altri computer. 

(Pasquale Se a lercio - Roma) 

Hat fatto bene 

Non preoccuparti: il tuo ultimo ac- 
quisto (C/1 28) è un ottimo computer, 
pu r se un po' trascurato dalle softwa- 
re house. Con il C/128 è possìbile uti- 
lizzare tutto il software disponibile 


per il C/64 e, ovvi amen e te, potrai col- 
legare qualsiasi accessorio valido an- 
che per il C/64. 

P.S: Grazie per la cartolina della tua 
bella città! 

(Già ottica Vieste) 

Speed Dos e 1541/C 

Prima di acquistare il set dì speed 
dos, ti consiglio di descrivere accura- 
tamente gli apparecchi in tuo posses- 
so al negozio cui ti vorrai rivolgere. 
(Manco Grande - So fio manna) 

C/ 1 6 difettoso 

Penso che al tuo C/16, che si com- 
porta sempre in modo strano dopo u~ 
na mezz'ora di funzionamento, fa- 
rebbe bene una visitina presso un 
centro di riparazioni specializzato. 

( Fabio Quinci - Roma) 

Ulegal quantity 

Sono pronto a scommettere che hai 
sbagliato a digitare alcuni dei valori 
numerici, presenti nelle righe Data 
del programma T/Tapc C/128 (C.CC. 
n, 42), 

La segnalazione “Ulegal quantity 
errori? infatti, viene visualizzata 
quando si tenta di Pokare un valore 
maggiore di 255 oppure negativo, 

(Alessandro Agatea - Saccohngo) 

Strani comportamenti 

Lo strano modo di operare del pro- 
gramma T/Tape C/128 (C.CC, n.42) 
dipende certamente dalla errata tra- 
scrizione dei valori numerici presen- 
ti nelle righe Data, 

(Sandro Gian greco - Ernia) 

Già pubblicato 

Il breve programma che hai inviato 
svolge le stesse funzioni di un altro li- 
stato che abbiamo già pubblicato 
in precedenza. 

(Andrea Preziosi - Somewert) 

Quante vite? 

Non esìste una locazione Specia- 
le "cui riferirsi per determinare il nu- 
mero di vite o disposizione durante 
lo svolgimento dei videogame. 

(Gian domilo Pappalardo - Barletta) 


14 - Commodore Computer Club 



Club 

Tra breve pubblicheremo tutte le 
notizie relative a quei club di infor- 
matica che ci invieranno su dischetto 
le informazioni richieste . 

(Alberto Bianchì - Cuneo) 

Vie 20 

Non dedichiamo spazio al Vie 20* 
non perchè è uscito di produzione, 
ma perchè non vi sono più lettori che 
chiedono di parlarne. 

(Carlo B reggi - Siena) 

Rozzano Club 

Non posso pubblicare f indirizzo 
del tuo Club per il semplice motivo 
che hai dimenticato di inviar!o(!) 
(Gennaro Gaetano - Rouano ) 

Buon programma, ma... 

1 programmi che hai inviato su car- 
ta sono (forse) interessanti, ma, perla 
loro pubblicazione, è indispensabile 
che pervengano su disco, corredati 
da relativo articolo esplicativo. 

(Marco Barateli - Adria) 


Ma come hai fatto? 

Non riesco proprio a capire come 
tu possa aver caricato su C/l 6, dotato 
di solo registratore, il lungo program- 
ma Ge.Da.Fi. apparso sul N.37 che 
richiede esclusivamente il drive per 
poter funzionare correttamente. 

Forse è questo il motivo dei mal- 
funzionamenti di cui ti lamenti. 
(Mauro Montana - Pisa) 

Indici ragionati 

Al più presto pubblicheremo siste- 
maticamente l'elenco degli articoli e 
dei programmi apparsi sulla nostra 
rivista. 

(Mauro Strinila - Cagliari) 

Troppe domande 

Mi dispiace, ma il numero di do- 
mande che poni nella (simpaticissi- 
ma) lettera mi hanno scoraggiato al 
punto di non sapere che cosa rispon- 
dere; perdonami! 

(Angelo D'Amico - Cava dei Tirreni) 


Programmi validi 

I programmi che hai inviato su di- 
sco mi sembrano interessanti ma so- 
no privi delVarticolo esplicativo, in- 
dispensabile per proporli ai nostri 
lettori: telefonami. 

(Tea UsueìU - Roma) 

Fuori l’autore 

L'autore degli inserti dedicati al 
CP/M disponibile sul C/128 (apparsi 
sulla rivista "Personal Computer ) è 
Pietro Rozzo Mi scuso per Terrore di 
trascrizione dovuto ad una serie dì 
involontari equivoci. 

Pippo 

II file sequenziale dal nome "Pip- 
po 1 , lungo 66 blocchi (e presente in 
un dischetto di Directory)* è il il le e- 
la borato dal programma "Cale Re- 
sti It” e rappresenta 1^ tabella riporta- 
ta nelPinserto “Come usare corretta- 
mente Cale Restili” contenuto nel 
N.42 della nostra rivista. 

(da alcune telefonate) 



COMUNICATO 

(Esclusiva per (Italia) 

La MAGNETO PIASI di Verona è 
lieta di informare tutti gli utenti (user), 
operatori e rivenditori COMMODORE: 
ESCLUSIVA DI DISTRIBUZIONE E VENDI- 
TA IN TUTTA ITALIA della • OCEANIC 
ELECTRONICS CO., produttrice fra l’altro 
del noto FLOPPY DISK DRIVE OC-118 N. 


ATIBLE 


LOPPY 

DRIVE 


268.000 

+ (VA 


J H n.'tr'l. itoti Q I -.-I 

COW-OOOfiL ft •*3Sl--y!0 

Jo COMMODORI ELidROMCS tld. 


Caratteristiche; • Corri patibile 100% con COMMODORE 64, 64 C, VIC 20, Plus 4, C 12B ; in modo 64), 06. • 30% più veloce dei 
Disk Drive 1541. • Costruzione a basso profilo - il più compaio Disk Drive reperibile per Có4. • Garanzia 1 anno (con certificato), • 
Praticamente esente da manutenzione. • Motore a trazione diretta per un funzionamento silenzioso. • Capacitò di memorizzazione 
174 K. Fino a 144 etichette di directory, • 25ó Bytes per settore, 35 tracce. • Peso 2,8 Kg. Dimensioni 200x150x45 mm. 
Inoltre; • Massima versatilità ed efficenza. • MTFB - 10,000 ore, • Affidabile e durevole. • Telaio in pressofuso. • Provvisto di com- 
mutatore per selezione indirizzo device. * Spia di funzionamento o led multicolore. • Alimentatore esterno - elimina il surriscalda- 
mento dd Drive. • Costruzione robusta ma leggera - permette la sovrapposizione di più Drive. • Completo di cavi interfaccia. 

Imminente: FLOPPY DISK DRIVE per AMIGA 1010 compatibile, medesimo prezzo. 

MODEM per C 64/1 2 8 solo l. 88.000 + IVA. 300 Baud 
CGTT V21 Full Duplex. Innesto diretto sul computer. Auto Diai, 

Auto Answer. Completo dii Software in Italiano e manuale. \ & . 


VASTO ASSORTIMENTO MODEM per tutti i Computer AMIGA, PC 10/20, IBM e 
compatibili, OLIVETTI, APPLE ecc. per tutti gli standard: 300 Baud V 21, 1200 Baud V23 
(Vidotel), 1200 Baud V22 Full Duplex, 2400 Baud V22 bis, Full Duplex. 

GRUPPI DI CONTINUITÀ 200, 250, 500, 1000 VA. UPS e ON-LINE. 


s.r.1. - Via Leida, 8 - 37135 VERONA - Tel. 045/504491-501913 - Fax 045/501913 



Directory 


Tutti i programmi pubblicati su questo numero di Commodore Computer Club, sono registrati su un dischetto ap- 
partenente alta serie 'Directory". 

Oltre ai programmi citati, sono presenti altri file di notevole interesse per coloro che desiderano realmente utilizza- 
re il proprio computer 

Sono infatti presenti di solito, anche ì programmi pubblicati sulValtra nostra rivista "Personal Computer", ed altri 
file che t in totale ; riempono quasi per intero i 664 blocchi normalmente disponibili ju un floppy disk. 

Sono disponibili i seguenti dischetti: 

Directory N. 1 (CCC N.34 + raccolta deìVintera Enciclopedia dì routine) 

Directory JY 2 (CCC N35 + CCC N. 36) 

Directory N. 3 ( CCC N37 + PC N.7 + PC K8) 

Directory N. 4 (CCC N J8 + file vari) 

Directory N. 5 (CCC N 39 + PC N9) 

Directory N. 6 (CCC N 40 + PC NI 0) 

Directory /V. 7 (CCC NAl + file vari) 

Directory A’ 8 (CCC N.42 + file vati) 

Directory \\ 9 (CCC N.43 + file vari) 

Directory Al IO (CCC N.44 f file vari) 

Come procurarsi i dischetti della serie “Directory'” 

Avvertiamo i lettori che NON è assolutamente possibile inviare i programmi su nastro, per intuibili motivi di eco- 
nomia ed affidabilità del nastro cassetta. 

Ogni numero di ‘Directory" può quindi esser richiesto SOLO su disco inviando LJ 2000 per ciascun disco oltre a 
L3000 (fisse) per le spese di imballo e spedizione (indipendenti dal numero di dischi richiesti). 

Chi desiderasse la spedizione raccomandata, deve aggiungere altre 3000 lire per Tutteriore affrancatura. 

Non ci è possibile inviare materiale contrassegno: si prega di astenersi dal chiedere eccezioni alla regola. 

Compilate un normale modulo di C/C postale indirizzando a: 

C/C postale A, 37952207 
Systems Editoriale 
Viale Famagosta f 75 
20142 Milano 


Non dimenticate di indicare chiaramente, sul retro del modulo (nello spazio indicato con Causale del versamento ") 
non solo il vostro nominativo completo, ma anche il numero del disco desiderato: esempio: 

'Directory MI" 

"Directory NJ ” 

"Directory A 14” 

Totale: 

L12000x3 + 

C6000 (spedii, racc,) 

= L.42000 

(spese di imballo e spedii, racc . comprese/ 

NB. Per ottenere il materiale ordinato in tempi più ristretti, inviate l importo a mezzo assegno bancario non trasferi- 
bile con lettera di accompagnamento: le poste italiane non brillano per velocità! (due mesi circa perii recapito di un 
C/C postole). 


16- Commodore Computer Club 


HARDWARE 


Un monitor affidabile 


Non sempre un monitor a colori 
rappresenta lì meglio per i package 
professionali; per non parlar 
dell’aspetto economico... 


di Alessandro de Simon e 


]\^I olle lettere che riceviamo tor- 
nano spesso sull'eterno dilemma: è 
meglio procurarsi im monitor a colo- 
ri, un TY oppure un semplice bianco 
e nero? 

La risposta è fu tt altro che semplice 
perchè, per rispondere correttamen- 
te, è in dispensabile sapere l’uso che si 
deve fare del sistema di visualiz- 
zazione. 

Tuttavia possiamo riportare una 
scala di valori che rappresenta, a se- 
conda dei casi, io schermo ideale: 

* TV color domestico. Questo è sicu- 
ramente l'opti munì dal punto di vista 
dell'economia: è statisticamente di- 
mostralo che. nelle case iti cui entra 
un computer, è presente anche un ap- 
parecchio TV color; quasi sempre, 
però, questo ha dimensioni piuttosto 
grandi e lo rende idoneo solo per vi- 
deogiochi c software di int ratte ni- 
ni e ni o. Assolutamente sconsigliato 
per lavori di word processing e pro- 
fessionali in genere, ove è ridi icsta li- 
na grande nitide/ a cd una dimensio- 
ne piccola del video. 

* Monitor colore specifico per com- 
puter. L;\ qualità, rispetto alla solu- 
zione precedente, aumenta di parec- 
chi punti sia per le ridotte dimensio- 
ni dello schermo, sia per la maggiore 
nitidezza disponibile. Solo la ripro- 
duzione sonora lascia, spesso, a 
desiderare, 

* Monitor B/N specifico per compu- 
ter, F Ideale per lunghi lavori con 
software professionale. Non è possì- 
bile realizzare, infatti, un video a co- 
lori dì nitidezza superiore a quello in 


bianco c nero; ne consegue una vi- 
sualizzazione di tutto riposo che non 
affatica la vista anche dopo molte ore 
di lavoro. Non per niente, negli uffici, 
trovate quasi esclusivamente moni- 
tor monocromatici , 

J modelli Philips 

La Philips, industria leader nel 
campo del Le le fi conica, offre sul mer- 
cato anche modelli in h/n, di alta af- 
fidabilità e, soprattutto, basso costo, 

T monitor ai quali ci riferiamo sono 
dota ti di se h o nn canti ri 11 esso, d i s ta f- 
fa di itici in azione c di cavetto con 
spina DIN a sei poli (ma sono dispo- 
nibili, a parte, tutti i cavetti di adatta- 
mento possibili ed immaginabili). In 
alcuni modelli è presente la presa per 
la cuffia, mentre in tutti gli altri pos- 
siamo trovare i soliti comandi: volu- 


me. luminosità, contrasto, regolazio- 
ne rapporto orizzontale / verticale. 
Un utile tasto consente di selezionare 
due tonalità cromatiche per lo 
sfondo. 

La serie di modelli prevede, come 
optional, un piede di supporto per o- 
rie rotare ed inclinare il monitor nelle 
varie direzioni, un parasole per i si- 
stemi che dovessero venire installali 
nei pressi di una finestra, un porta- 
carta, da posizionare ai lati del moni- 
to r stc sso, per a 1 k ìggi a re fogl i d a 1 1 i I o- 
scritti c facilitarne fevcntuaìe tra- 
scrizione. 

Un larghezza di banda di 22 Mhz, e 
la possibilità di visualizzare fino a 
2000 caratteri (schermi dì 80x25) non 
lasciano dubbi sulla nitidezza delle 
immagini che i monitor Philips sono 

^ 9i d G riprodurre. Il consumo, 

come intuitivo, è irrisorio: solo 32 




INSIEME 


Una cedola importante 


Nelle nuove confezioni dei prodotti 
Commodore è presente uno stampato 
che consente di abbonarsi 
a condizioni vantaggiose 


v_> hi ha appena acquistato un prò- 
dotto originale Commodoro negli ul- 
timi tempi, avrà sicuramente trovato 
un depliant. simile a quello riprodot- 
to in queste pagine, che precisa alca- 
ne utili cose. 


Commodore Computer Club è la ri- 
vista ullleiale della Commodore Ita- 
liana e, come tale, è il "canale" prete - 
rendale per la diffusione di notizie 
relative al mondo Commodore. 


sioni che riguardassero da vicino i! 
mondo dei computer Commodore, 

E se il drive, la stampante, il com- 
puter o il software acquistato non 
possiede la scheda di cui parliamo? 



Spettabile 

Sv^egimaflosta. 75 


rr*m° 


V ,v i ,,r 


Anzitutto permette, al n co-acqui- 
reme. di sottoscrivere un abbona- 
mento alla nostra meravigliosa (scu- 
sate lim modesti a) rivista a condizio- 
ni particolarmente vantaggiose. 

Inoltre, come già era del resto avve- 
nuto in precedenza, ribadisce che 


Non si può negare, infatti, che da 
molto tempo (direi da sempre) la no- 
stra pubblicazione è sempre stata 
dalla parte dcll’u lente con varie ini- 
ziative: diffusione di notizie, divulga- 
zione di programmi, articoli c recen- 


te è, se vi interessa l'abbonamento a 
condizioni privilegiate, inviate una 
fotocopia della scheda di garanzia 
allegata alla confezione: faremo uno 
strappo alla regola! 




GIOCHI D AZZARDO 


Pronostici Totocalcio 


Come affidare al computer l’ingrato compito 
dì valutare le probabilità di vittoria 
delle squadre di calcio. 



F inora abbiamo presentato prò- 
grammi per lo sviluppo di sistemi 
condizionati, ridotti, biridotti ed al- 
tri, lasciando al lettore il compito di 
stabilire il sistema-base da impostare 
per le opportune elaborazioni. 

Ciò significa che il sistema-base è 
affetto, inevitabilmente, da influenze 
soggettive. 

In questo articolo proponiamo un 
metodo per stilare un sistema, esente 
da tali influenze, basato soltanto su 
dati di fatto. 



I dati ai quali si riferisce il program- 
ma, sono relativi ai risultati delle par- 
tite precedenti, divisi tra risultati otte- 
nuti in casa ed in trasferta. 

In base a tali informazioni, il com- 
puter calcola la probabilità che si ve- 
rifichi il segno 1, X, oppure 2 c, di 
conseguenza, propone un sistema di 
fìsse, doppie e triple. 




Il lettore potrà, poi, confrontare il 
sistema base, elaborato dal program- 
ma dì queste pagine, con quello che 
avrebbe impostato senza 'suggeri- 
menti' di sorta: in ogni caso valuterà 
la schedina dopo un’opportuna ri- 
flessione e, magari, eventuali modi- 
fiche. 


Come calcolare le probabilità 


Riferendoci ad un esempio pratico, 
supponiamo di voler calcolare le 
probabilità per rincontro tra due 
squadre, dal nome poca fantasioso di 





GIOCHI D'AZZARDO 


“Prima c "Seconda” 

Leggendo un quotidiano del lune- 
di troviamo i seguenti (ipotetici) 
dati: 

Squadre In casa Trasferta 
V N r V N P 

Prima 6 2 0 — — — 

Seconda — 0 4 4 

Dapprima sì trasformano tali dati 
in percentuali: 

Prima 

Vinte 75% 

Pareggi 25% 

Perdite 0% 

Seconda 

Vinte 0% 

Pareggi 50% 

Perdite 50 % 

Un’alta percentuale dì vincite in ca- 
sa. perla squadra ospitante, abbinata 
ad un'alta percentuale di sconfi tte in 
trasferta per la squadra ospite, rende 
“quasi " certa la vittoria della squadra 
die gioca in casa (segno *T l ); analo- 
go c il ragionamento nel caso op- 
posto. 

Pertanto la percentuale di vìncite in 
casa, della prima squadra* viene mol- 
tiplicata perla percentuale di sconfit- 
te in trasferta della seconda squa- 
dra: 

Segno ’7 " 

75*50 = 3750 

Le percentuali di risultato nullo 
(pareggio), si moltiplicano tra loro: 

Segno X : 

50*25 = 1250 

Infine, si moltiplica la percentuale 
di perdite della prima squadra, con 
quella di vincite delia seconda: 

fi il^U 

Segno 2 ; 

0*0 = 0 

L'ultima fase consiste nel riportare* 
su base percentuale, i risultati ot- 
tenuti,., 


I00/(prob."ì > prvb.'T'+ prob."T) 
= coeff 

„,e. successivamente, moltiplicare 
“coeff”. per le singole probabilità. 

Nel nostro esempio avremo, per- 
tanto: 

100/(3750+ 1250 + 0.02 

7 ‘V 0.02*3750 = 75 
X" 1 102*1250 “ 25 
" 2 " 0 . 02*0 = 0 

Totale = 100 

Tenendo presenti tali valori, si de- 
cide se giocare una fissa* una doppia 
oppure una tripla. 

Il programma 

Dopo aver dato il RUN, premete un 
tasto qualsiasi e, alla domanda “In- 
serisci l'elenco delle squadre?” ri- 
spondete con “S“* se intendete inse- 
rirlo, “N ' in caso contraria 
Se decidete di inserire ì nomi delle 
squadre, il calcolatore chiederà, par- 
tita per partita* i nomi delle squa- 
dre contendenti. 

Se non inserite l'elenco delle squa- 
dre, verranno subito chiesti i risultati* 
in casa per la squadra ospitante* ed in 
trasferta per l'altra, 
tali dati sono reperibili su qualsiasi 
quotidiano del lunedi; tuttavìa è con- 
sigliabile utilizzare i periodici spe- 
cializzati perchè indicano i risultati* 
distinti in casa e trasferta* anche per 
la serie R e C* 

E' facile constatare che* per una 
qualsiasi squadra* i risultati in casa 
differiscono notevolmente dai risul- 
tati ottenuti in tasfena; utilizzando, 
quindi, dati globali, clic non tengano 
conto di questa distinzione* si otter- 
rebbero previsioni non attendibili. 

In particolare, il programma pone 
le seguenti domande, riferite alla 
squadra ospitante: 

* vincite in casa? 
m pareggi in ama? 

* perdite iti casa? 

c* per Tal tra squadra, analoghe do- 


mande, riferite ai risultati ottenuti 
in trasferta. 

Terminata la noiosa fase della digi- 
tazione. sullo schermo appare l'elen- 
co delle squadre (se inserito prece- 
dentemente), seguilo dalle percen- 
tuali di probabilità per ì tre possìbili 
risultati e, infine, il sistema elaborato 
in base alle percentuali citate. 

Nel caso vi accorgiate di aver com- 
messo errori di battitura durante la 
fase di Input* basterà premere il tasto 
F3 e indicare il numero del pronosti- 
co i cui dati devono essere corretti. 

A questo punto appaiono sullo 
schermo le informazioni relative al 
pronostico* cd il seguenti? menù: 

1) cambia nomi squadre 

2) cambia dati 
5 ) nuda 

Premendo il tasto “1 ", si ha la possi- 
bilità di cambiare, o modificare, il 
nome delle squadre (nel caso sia sta- 
to inserito), mentre premendo “2", è 
possibile modificare i dati relativi ad 
una o entrambe le squadre. 

Infine, con il tasto “3 "* sì ottiene di 
nuovo la visualizzazione dell'elenco 
delle squadre* dei pronastici e del si- 
stema (che risulterà diverso dal pre- 
cedente, nel caso abbiate apportato 
modifiche ai dati di uno o più 
pronosttei). 

Un listato di utilità 

Àlea ni lettori hanno chiesto di poter ri- 
versare su stampante le colonne del Jìle 
generato con il programma TOT 13 (ap- 
parso su CCC n.35). 

Il secondo listato pubblicato in queste 
pagine, risolve il problema esposto, 

SCHEDA TECNICA 

Software applicativo per: 

giochi d'azzardo 

Idoneo per computer: 1764 

Facilmente adattabile ad altri 

computer Commodore 

Consigliato a tutti i lettori 


20 - Commodore Computer Club 



GIOCHI D AZZARDO 


10 REM PR0N0ST1CI TOTOCALCIO 

£0 : 

30 REM PER C-64 

40 : 

50 REM BY ANTONIO PASTORELLI 

60 : 

70 21$“ "SQUADRA OSPI TANTE ”: Z2$ 
-"SQUADRA OSPITE’’ 

00 X1$=CHR$C£135 : X£$“CHR$C19£5 
: X3$-CHR$C17B5 : X4$-CHR$C201 
5 : X5$=CHR$ ( 21 9 5 

00 X6$-CHR$C££15 :X7$-CHR$C1715 
: XB$~CHR$ (1793 : X9$“CHR$C325 

100 XA$=CHR$C£0E5 : XB$=CHR$ C 177 5 
: XCS-CHRSC2035 : FOR J=1 TD 7 
:XD$“XD$+X£$:NEXT 

110 Z3$=”UINCITE” : Z4$= "PAREGG I” 
: Z5$— ”PERD I TE ’’ : ZS$— ” IN GAS 
A”:Z7$-” FUORI CASA” 

120 DIM A1SC135 , A£$C13) ,U1C135 , 
V£C135 , XI C 135 , X2C135 , PI C 135 
, P2C135 

130 DIM 51C135 , SXC135 , S2C135 : CL 
$“CHR$C 1475 : RU$=CHR$C 1B5 : RQ 
$-CHR$C 145) 

140 SU$-CHR$C 145) : GI$”CHR$C 17 5 : 
HOS-CHRSC 19 5 : HGS-HOS+G I$+GI 
$+ 61 $ 

150 PRINTCL$RU$X9$X9$X9$X9$’’CAL 
COLO PROBABILITÀ ' TOTOCALCI 
0 ” X9$X9$X9$X3$ 

1E0 NR-13 

170 GET A$:IF AE-”’’ THEN 170 

100 PR I NTCLS ” I NSER I SC I L'ELENCO 
DELLE SQUADRE?” 

190 GET A$:IF AS“”5” THEN SQ-1 : 
GOTO ££0 

£00 IF A$-”N” THEN £70 

£10 BOTO 190 

£E0 FOR J-l TO NR 

£30 FRI NTCLS "PRONOSTICO” : J; GIS 


£40 FRINTZ1E; : INPUT A1$CJ5.:IF A 
1SCJ5-”” THEN PRINTSUS; : GOT 
D £40 

£50 PRINT2ES; : INPUT A2SC J5 : IF A 
£$ C J 5 - ” ” THEN PRINTSUS; : GOT 
□ £50 

£60 NEXT : PRINTCLS ; IF SQ-1 THEN 
400 

£70 FOR J-l TO NR 

£80 PRINTCL$RU$”PRONOSTICO”; J;G 
1 $ 

£90 PRINTZ3$Z6$” ”21 $ ; *1 NPUT U1 
C J 5 : I F U1CJ5<0 THEN PRINTSU 
$; :GOTO £90 

300 PRINTZ4EZES” ”Z1$;: INPUT XI 
C J 5 : 1 F XI C J5<0 THEN PRINTSU 
$; :60T0 300 

310 PRINTZ5SZ6S” ”21$;: INPUT PI 
<J5:IF PI C J5<0 THEN PRINTSU 
$; : GOTO 310 

3£0 IF U1CJ5-0 AND X1CJ5-0 AND 
P1CJ5-0 THEN £80 

330 FRI NTG I $G I $ 

340 PRINTZ3$Z7$” ”2E$;: INPUT U£ 
C J 5 : I F U£CJ5<0 THEN PRINTSU 
$; : GOTO 340 

350 PRINTZ4SZ7S” ”2£$; : INPUT X£ 
C J 5 : IF X2C J5<0 THEN PRINTSU 
$; : GOTO 350 

360 PRINT25$Z7$” ”Z£$;: INPUT P£ 
C J 5 : I F PEC J 5 < 0 THEN PRINTSU 
$; : GOTO 360 

370 IF UECJ5-0 AND X2CJ5-0 AND 
PECJ5-0 THEN FRINTSUSSUESUS 
; : GOTO 340 

380 GOSU8 1780: IF RP-1 TKEN £B0 

330 NEXT: GOTO 540 

400 FDR J-l TO NR 

410 FRI NTCL$RU$” PRONOSTICO ” ; J; 6 
1 $ 

4£0 PRINTRUSA1SC J5 ” : ”R0$23$Z6$; 

: INPUT UIC J5 

430 IF U1 ( J 5 < 0 THEN PRINTSUS; :G 
OTO 4£0 



Commodore Computer Club -21 



440 

4.50 

460 

470 

400 

450 

500 

510 

580 

530 

540 

550 

560 


570 

5B0 

590 

600 

610 

680 

630 

640 

650 

650 

670 

600 


590 

700 

710 

780 

730 

740 

750 

760 


PRINTRUSmSCJ} "RDSZ4SZ6S; 

: INPUT X1C J) 

IF X1CJX0 THEN PRXNTSL13;:G 
□TO 440 

PRINTRU5A1SC JV J : ”R0$Z5$Z6$ ; 

: INPUT P1C JD 

IF P1CJX0 THEN PRIN!SUS;:G 
OTO 460 

IF U1CJ3-0 ANO XKJ3-0 AND 
PI ( J )=0 THEN 410 
PRINTGI96IS 

PRINTRUÌA8SC JT) " i ”R0S23SZ7$; 

: INPUT U8C J) 

IF U8CJX0 THEN PRINTSUS — G 
□ TQ 500 

PRINTRUSAaSC J)” : "ROS; Z45Z7S 
; : INPUT X8C JD 

IF X8CJX0 THEN PRINTSU5;:G 
□IO 580 

PRINIRUSA8SC J3 ” : ”RQS-Z5ffiZ7$ 
i : INPUT P8CJÌ 

IF P8CJX0 THEN PRINTSU$ ; rG 
□TQ 540 

IF U8CJX0 AND X2CJ5-0 AND 
P8CJ>-0 THEN PRINTSUSSUSSUS 
; : GOTO 500 

60SUB 1700 ; I F RP-1 THEN 410 
NEXT 

m 

r 

REM 

REM CALCOLO PERCENTUALI 
REM 

Ai 

POR J=1 TD NR 

S1“U1CJ1*P8C J1 : SX-X1C J1*X2C 
J1 :S2-P1 C J3*UeCJ) 

IF S1+SX+SB-0 THEN S1CJ1-33 
:SX( JI-33:S5CJ?-34: GOTO 630 
FR-100/ CS1+SX+S21 
S1CJ>=INTCS1*FR) -SXCJ)“INTC 
SX*FR) : SBC J> = 100-51 CJl-SXC J 
> 

IF RT-1 THEN RETURN 

NEXT 

* 

REM 

REM STAMPA PERCENTUALI 
REM 

IF SD-1 THEN TA-17 


770 PRINTCLS TABC TA 1 X1$X2$X2$X3 
®X2SX2$X2$X3$X2$X2$X2$X3$X2 
$X2$X2$X4$ 

780 PR1NT TAE C TA ) X6S> "NR ”XB5 ” 1 
"X6S” X "XGS" B ”X6$ 

790 PRINT TABC TA3 X7$X8$X2$X5SjX2 
SX2$X2$XSSX2$X2SX2$X5$X2$X5 
$X2SXB$ 

800 X”0:FOR J-l TO NR 
B10 PRINT TABCTA3X6$X3$X3$X6SX3 
$XSSX8SX6$X8$X9$X9$X6$X9$X9 
SX9SX6S 

320 X-X+1:IF X>2 AND J<10 THEN 
840 

630 NEXT: GOTO 850 
B40 PRINT TABCTA)X7$X2$X2$X5SX2 
$X2$X2$X5$X2$X2$X2$X5$X2SX2 
$X2$XBS : X-0: GOTO 830 

850 PRINT TABCTA)XA$X2$X2SXB$X2 
SX2$X2$XB$X2$X2$X2$XB$X2$X2 
$X2$XC$ 

860 IF SQ=0 THEN 330 
870 PRINTH0SGISGISX1SX0SX3SXDSX 
4$ 

BB0 X“0 : FOR J“1 TO NR 
BS0 PR I NTX6SSPCC 7 ) X656SPCC 7 1 X6$ : 
X-X + l.-IF X>2 AND J<10 THEN 
910 

900 NEXT; GOTO 920 
910 PRINTX7$XD$X5$XDSXB$: X=0:GO 
TO 900 

320 PRINTXA$XD$XE$XD$XC$ 

930 PRINTHO$GI$GI$; 

940 PRINT TAB(33)X12?X8S>X8S>X8!BX4 
$ : X=0 ; FOR J-l TO NR 
950 PRINT TABC33)XE$X9$X9SX9$X6 
$ ; X=X + 1 : I F X>2 AND J<10 THE 
N 970 

9S0 NEXT: GOTO 9B0 
970 PRINT TABC 33 1 X7$X2£X2$X8$XB 
$ : X”0 : GOTO 360 

980 PRINT TABC 331 XA$X2$XB$X2SXC 

$ 

990 IF SQ-0 THEN 1040 
1000 PRINTHGS; ; X-0 ; POR J-l TO NR 
1010 PRINT ”C R IGHT3 ”LEFT$ C A1$C J 1 , 
71 TABC91LEFTSC A2*C J1 ,7) : X~ 
X+lsIF X> 2 ANO J<10 THEN 10 
30 


22 - Commodore Computer Club 





prossima apertura 

< ... . 


V!*V.' ■'* V ? _• . 

Slip 


iÉfe ■ i 


SN >. • ' - ■• Sfi i 

>,■ ■ - 








GIOCHI D AZZARDO 


1020 

1030 

1040 

1050 


10E0 

1070 

10B0 

1050 

1100 


1110 PR 
J 3 

1120 X= 
11 

1130 NE 
1140 PR 
1150 PR 
: A: 

1160 IF 
1170 IF 


NEXT : GOTO 1040 
PRINTGII; : X=0: GOTO 1020 
PRINTHGS; :X«0: FDR J-l TQ NR 
PRINT TABCTA+4-LENCSTRIC J3 3 
3 ; MIDICSTRIC J3 ,2,21: X-X + l : I 
F X> 2 AND J< 10 THEN 1070 
NEXT; GOTO 10B0 
PRINTGII; : x=0: GOTO 1060 
PRINTHGS; ; X=0 : TA-TA+8 ; FOR J 
=1 TO NR 

PRINT TABCTA-LENCSTRICS1CJ3 
3 3 3 ;MID$CSTR$CS1CJ3 3,2, 33; 
PRINT TASCTA+4-LEN C STRI C SX C 
J1 1 1 1 ; MIOSCSTRICSXC J3 1,2,3) 

PRINT TABCTA+8-LENCSTRICS2C 
J3 3 3 3 ; riID$CSTRICS2CJ) 3 ,2,31 
X=X+1;IF X> 2 AND J<10 THEN 
1140 

NEXT: GOTO 1150 
PRINTGII; ;X=0:GOTO 1130 
PRINTHGS; : x=0; FOR J=1 TO NR 
: AI-” " 

IF S1CJ3>22 THEN AS-"Ì” 

IF SXC J )> 22 THEN AS=AS+”X” 


1180 

1130 

1200 

1210 

1220 


1230 

1240 


1250 

1260 

1270 

1280 

1230 

1300 

1310 

1320 


IF S2 C J 1 > 22 THEN AI«A$+”2” 
IF A$= ”1X2 ” THEN 1220 
IF LENC AI3-2 THEN AI=" ”+AÌ 
: GOTO 1220 
A$= " ”+AI 

PRINT TABC37-LENCAI33RUIAI: 
X—X+ 1 : I F X>2 AND J<10 THEN 
1260 
NEXT 

PR I NTG I $G 1 IRUI ” ’ FI ’ : RESTAR 
T ’ F3 ’ : HODIFICH 

E” 

GOTO 1270 

PRINTGII; : X-0: GOTO 1230 
GET AS.-IF AI-CHRIC 133) THEN 
RUN 

IF AI-CHRIC 134 1 THEN 1300 
GOTO 1270 

PRINTSUISUI; : FOR J=1 TO 40; 
PRINTCHRIC32) ; : NEXT: PRINT 
FOKE 214 , 21 : SY55B640 
NI=0: INPUT "NUMERO INCONTRO 
” ; N I : I F NK0 OR NI>13 THEN 
1310 


1330 IF NI»0 THEN POKE 214,15:SY 
S5B640 : GOTO 1240 
1340 PRINTCLS” INCONTRO NR:”;NI 
1350 PRINTGII TABC23) "UINTE NULE 
E PERSE” 

1360 IF SQ-1 THEN PR I NTA1 $ C N I 3 ; : 
GOTO 1380 

1370 PRINT "SQUADRA OSPITANTE”; 

1 3B0 PRINT TABC26-LENCSTRICU1 (NI 
))))U1CNI3 TABC32— LENC STRIC 
X1CNI))))X1CNI); 

1390 PRINT TABC3B-LENCSTRICP1CNI 
))))P1CNI) 

1400 PRINTGII; :IF SQ-1 THEN PRIN 
TA2ICNI 3 ; : GOTO 1420 
1410 PR I NT "SQUADRA OSPITE”; 

1420 PRINT TABC26-LENC5TRIC U2CNI 
))))U2CNI) TABC32-LENCSTRIC 
X2CNI 1 3 3 3X2CNI 3 ; 

1430 PRINT TABC3B-LENCSTRSCP2CNI 
3 3 3 3P2CNI 3 

1440 PR I NTG I SG IIGI I "COSA MDDIFIC 
HI?” 

1450 PRINTGII”! 3 NOMI SQUADRE” :PR 
I NT ”2 3 DATI SQUADRE” ; PRI NT ”3 
3 NULLA” 

1460 GEI AI:IF AI“”1” THEN 1500 
1470 IF AI- ”2” THEN 1570 
1400 IF AI-"3” THEN TA=0:GOTO 76 
0 

1490 GOTO 1460 
1500 IF SQ=0 THEN 1460 
1510 A$= ” ” : PR I NTCLI TABC193A1SCN 
I 3 : PRINTHOS; : INPUT "SQUADRA 
OSPITANTE” ; AI 

1520 IE AI- ” ” THEN 1510 
1530 A1SCNI 3 -AI 

1540 AI— ” ” ; PR I NT TABC 1S3A2SC NI 3 : 
PRINTSUI; : INPUT "SUADRA OSP 
ITE”; AI 

1550' IF AI- ” ” THEN PRINTSUI; ; GOT 
0 1540 

1560 A21CNI3-AI: GOTO 1340 
1570 PR1NTCLI ; ; IF SQ-1 THEN PRIN 
TA1ICN I 3 : GOTO 1590 
15B0 FRI NT "SQUADRA OSPITANTE” 

1590 PRINT TABC 143U1 CNI 3 : PR INTSU 
I; ; A-0 


1400 


1410 

1420 


1430 


1440 


14S0 



24 - Commodore Computer Club 



NEGOZIO AL PUBBLICO 
E VENDITA PER CORRISPONDENZA 


CASH & CARRY 


20155 MILANO - Via Mac Mahon, 75 
tei. 02/32.34.92 - tei. 02/32.70.226 


Attualità elettroniche e Microcomputers 




64,123 L 110,000 

Ho Ami tiretto per commodoro W, 300 
band cor soft e manuale ftal iano» 


DRIVE IMI COMPATIBILE per 64/12® L 340,04)0 

DRIVE Ì541/C QRtGlHALE ner S4 12B L 300.000 

DRIVE 1571 eia 360 K per wm L 400,000 

DRIVE 1 BRI 3-1/2 SOI K per &4/12B L 470,000 

MGOSt 1531 ong comuriCOOfe 64/129 110,000 

NUOVA GUIDA AL CP M 3.0 Cormcdore T2S ir, tìsliano a sale L 


THE NEW RNALCARTRIDGE 
III 

per 64/133 imwJo 64} L 68.000 
L’evdLEone cofrtiftjs!!! 

Eccovi E'uRima reiea^ d& mitica 
certuaSa nslevc^nente migtmta e 
" r xx£ ; i£3tc. Tuìmìè lÈvotoa routine 
d^c- Èpeodos su cartuccia fino 4 10 
frù «late $4 in lsttw& che in 
tettici g tasti funame 
programmali. 24 K ram per i grog. 

4i Base. Un favoloso sprcietme di 


PROCESSORE VOCALE (VOI- 
CESYHTERC) 

L, 115.000 

Dsgrtaf zza tare vocale Iseo ‘'Voice 
Master" notovefinerrte miglioralo 
composto a interlaccja haneware 
- mscftstono software htorsmeròe 
in ita! ino con ampio manuale di 
iatrwfcni. Incrsdibtfie, la parlare, 
cantare il tuo Cornmcdore 64 poi 
programmarlo a fin Che Conosca la 
tua voce e li risponda. 


DOUBLÉ SH>E iOT [NOVITÀ] 
L L 0.000 

Per scrivere sulla seranog taccia 
del d$po seria più forarle! !! 


AM3TRAD PC 512K còri i DRIVE nuova processore 6066 sborda 1 dos mi- 
erosoti 3.2 e GEM in onagro a sole X 990.000 


IVA 1S% COMPRESA 


INTERFACCIA MIDI 
L 09,000 

Per cdtegsm ira -aÈl^era midi ad 
AMIGA. 


AMfiGASOO-SIfttRAM > DRIVE INC, 1MB + MOUSE ALIMENTA- 
TORE BASIC + ^OPERATIVO >■ GARANZIA 12 MESI COWNOOOflÉ 
a sete L 939.000 


D^hi e cassette IN UN SOLO 
FI LE ?| ! pJ— boat SS necessita Inolne 
ha incorporalo H GA>ME KILLER 
(evita le cenisene degii sprile ed ha 
ben 40 comsnd. Base Turbo a 
tìiÉposcione ...HARDGCFY HP M 
faeme'idc lt- sdp tasta potrete firn 
1‘haraccpy del video in !2 
yadaàMH a ^Igia. 


MODIFICA MP$ 602 NEX 
GRAMHCPLU5 
t. 35.000 

EcceiiOfiEle rende 100 % compati- 
bile la tua Mf'S SQ2 con turii i gro- 
cramrrt di grafica coma IKOIA 
FRI WT SHOP GEOS eco...) sempk 
cisaima da molare con chiavi 
Istaffiona in itaHanc! ! 


AMIGA 3000 - m + 1 DRIVE +■ MOUSE - MONITOR HR + Sto + SASSO 


WGIWEW 
L 160.000 

Per digitsimas se tue pie belle im 
magini. 


SCHEDA XT-iOARD per A, 2000 cw drive 5-1/4 e S/O L. 1£W 


- MONITOR DEDICATO PHIUPS BS33 STEREO % Al A GA 

Lmooo 


STAMPANTI CENTRONICS PER COMMODORE AMIGA 

- SMITH CORONA - S3 cps NLQ U 250.000 

- COMMODORE MPS 1000 - 1!» epa NIC L 580.000 

- STAR NL 10 - 126 epe NLQ L 599,000 


SYNTETTC SOUND 
i. 100.000 

Ree (AjtafczzatP la tifi voce e/o 
suoni. 


DISPONIBILI TUTTI I PEZZI DI RICAMBIO COMMODORE 04 

SL-JN-I FAFTICOIARI PER RMBUffOfi L DUAMIT/ri'Jl TELE-CNA T E! 

PER ULTERIORI INFORMAZIONI RIChlffifTE F CATALOGHI PER IL 
VOSTRO COMPUTA SPECIFICANDO IL SETTORE. INVIANDO L 1.000 
in frarcoboli ftcpfàs che ala NEVEL trev anche lutto per 
COMMODORE AMIGA 64-126 MSX. SWCLAlR ZX 5 QL ATARI 5! e 
PC compatìsll 


EPROM NEW GHAPHIC MPS 

801 

L £5.000 

3 sostituisca a ger^etott di ca- 
ratteri defe siampantE MPS-S01 
iptY mà^torare la ^ggibiìra dalla 
scrittura C 2 * discundentii. 


ALLINEATONE 
TESTINA + TURBOT APE 
(CARTR1DGE) L. 29.000 

Indispensabile per non avere più 
proti^ni c# -cwviesm&rvLo. 


L 290.000 

Eaesortate n ovili un dtgitsìiEia 
tare aucb e video in un ikiioq ap 
parecchio ! 1 1 


FILTRO AHT1DISTURB0 {uni- 
versale}. 

L. 25.000 

Guestd stupendo apparsctìvo vi 
aiuterà a risedere ad a prevenire 
moitissri problemi. 

Adesenpiu stalli dicarToritesono 
rgtali per un computEf. tnoltrevi ip* 
glit <Ssturi> che possono irrfture 
mrrrfi eislorsione del videa, ewo 

biemi ni carcamentd pagrnmni- 
eoe. ..{utilissimo}. 


PENNA OTTKA 
GRAFICA (Brìo Peri Lussa} 
L 49.000 

Favoiasa penna Gdica per 
Mvmwdore 6< a T26 [modo 54) 
'iCiTipSeià di software ccmptèt;: d 
gestione grafico sia si crissella 
che su ri soo il tutto è Pelato ci 
Rinvieni in ifaliara 


STARDOS NEW! Eccezionale novità un vetociaalQffi che Sùpera i^lna r= 
velocità deilc- speed-dos abiva i tasti funzione eoe. lo una sola Epnom krt ria 
infiérirBi nel c&4 con marmala in rial. Non necesita di etaborazren i dnvE ne 
del cavo parafo. Em dda? ora anche gn disco copiatori v^ìocàssiniof!! 


L 1.450.000 
Favoloso rrtiJter video!!! 


L, 39.000 


CARTRiDGE 0 d col, L 39.000 

RérmetlÈ di visuisirnane le 3Ù oikXMve sul 6J. 

L 39.000 

VIDEO DIGITAL 64 .Nlxivo visua zzatole in cartwida, digitaiizza e lue p-c 
bsiie immagini rcn l'aiuto di ima tetecamera o viòeofegislratofa swnpldssitno 
dj usare con mar^tsale in italiane, inahre è pagabile modificare le Imma^rì 
con ri KOALA ecc, 


ORI VE AGGIUNTIVO 


CAVO SCART 


ESPANSIONE 0,5 


a un monrtor o tv scan 


DRIVE AGGIUNTIVO 
L 209.000 

per COMMODORE AMIGA 2000 


L 99.000 


{programmai Urite le epram lino alle 27250) il tutto 
COtfetSato di garanzia orig ra^ 
e manuale italiano. 


CAVO STAMPANTE 
L 35.«K? 

per CQMf^QDORE AMIGA SOft' 
1000^000 


ADATTATORE TELEMATICO COMMODORE 
647129 L 149,000 

Ecc/wi ;l nuavp ^maclefT: psgiia conmadcre 300-' 1 1200-75 hsuc auledi aanaraer 
completo di software su epnom in ita ianc «altre compio Labbbaca 1 nento per un 
enne al i deate flC alie pagine ga le sp Isolo etesii du§ servii' superane 
abbordantemente i costo dd modem) 1 ! 'Ì! ? ! ! T 


Psr COMMODORE AMIGA. 


HARD DISK 20 MB 
L 1190,000 

per COMMODORE AMIGA 50GJ 
lOGO^OOO 


KICKSTART SU ROMA 1 .2 

PLUS ESP, £5S per AMIGA 

lOMItkfWtort 


JOYSTICK 
a partire dà L 9.900 

universali 9 p*i per AMIGA 


PREZZI rVA COMPRESA 

SCONTI SII QUANTITÀ, SPEDIZIONI IN TUTTA ITALIA 

















GIOCHI D AZZARDO 


1600 


1610 


1620 


1630 


1640 


1650 

1660 

1670 

1600 

1630 

1700 


1710 


1720 


1730 


1740 


1750 

1760 

1770 

1700 

1730 

1000 

1810 

1B50 


INPUT "UINTE IN CASA";A:IF 
A<0 THEN PRINTSUS; : GOTO 160 
0 

U1 CN I )=A : A*=0 : PRINT TAB£16)X 
1 C NI 5 : PRINTSUS; 

INPUT "PAREGGI IN CASA" ; A : I 
F A< 0 THEN PRINTSUS; : GOTO 1 
620 

X 1 £ N 1 )“A : A“0 : PR I NT TABC16)P 
1(NU : PRINTSUS; 

INPUT "PERDITE IN CASA”; A: I 
F A<0 THEN PRINTSUS; : GOTO 1 
640 

PUNICA 

IF UlCNI)-0 AND XI CNI )=0 AN 

□ PI £NI )=0 THEN 1670 

PR I NTCLS ; : IF SQ=1 THEN PRIN 

TA£$£NI ) : GOTO 1630 

PRI NT "SQUADRA OSPITE” 

PRINT TABC17)U2CNI ) : PRINTSU 
S ; : A 5 "© 

INPUT "UINTE FUORI CASA”; A: 
IF A< 0 THEN PRINTSUS; :G0TC 
1700 

U2CNI )=A: A=0: PRINT TABC1S1X 
2 £ N I ) : PRINTSUS; 

INPUT "PAREGGI FUORI CASA”; 
A : I F A<0 THEN PR I NTSUS ; : GOT 
0 1720 

X2CNI )“A : A“0 ; PRINT TABC1S)P 
2CNI) : PRINTSUS; 

INPUT "PERDITE FUORI CASA”; 
A : I F A<0 THEN PR INT5US ; : GOT 
D 1740 
P2CNI )=A 

IF U2(NI)=0 AND X2CNI)=0 AN 
D P2£NI 5=0 THEN 1670 
RT=1 : J=N I : GOSUB 650:RT-0:GO 
TO 1340 

PRINTGI SG1S "CONFERII I ?”: RP=0 
GET A$ : I F A$= ”S” THEN RETUR 
N 

IF A$="N” THEN RP=1: RETURN 

GOTO 1730 

END 


130 

140 

150 


100 REM STAMPA COLONNS DEL FILE 
110 REM GENERATO CON TOT-13 
120 REM CC.C.C. N.35) 


170 

180 

190 

200 

210 

220 


230 

240 

250 


260 

270 

£00 


230 

300 

310 

320 

330 

340 

350 

360 

370 

300 

330 

400 


REM BY ANTONIO PASTORELLI 

* 

PRINTCHRSC 1471 TABC 11 1 "TOT” 
PRINTCHRSC 19) ;: INPUT "NOME 
FILE"; AS : I F A$="” THEN 160 
PRINTCHRSC 17) “ I L FILE ”AS” 
E’ REGISTRATO SU:” 

PRINTCHRSC 17) ” DISCO” 
PRINTCHRSC 145) ; ; INPUT DOS : I 
P DU$= "DISCO” THEN 220 
IF DU$="NASTRO" THEN 240 
GDTD 130 

OPEN 1,0,15: CLOSE Ì^IF STO 

0 THEN PRINTCHRSC 147) "ACCEN 

DI IL ORILE . " ; STOP 

OPEN 1 , 8, 12, A$+” ,6, R" : GOTO 

250 

OPEN 1, 1,0, AS 

OPEN 2,4,15: CLOSE 2:IF STO 
0 THEN PRINTCHRSC 147) "ACCEN 
DI LA STAMPANTE . ".-GOTO 350 
OPEN 2,4,7 

PRINTCHRSC 147) ” ’S ’ PER INTE 
RROMPERE LA STAMPA." 

INPUT#1 ,NR: X-0: FOR J=1 TO N 
R:PRINT#2, TAB C 7-LEN C STRS C J 
)))CHRSC18)JCHRSC146); 

FOR X-l TO 13: GOSUB 370 
I NPUTttl , A : I F A=1 THEN A$=”l 


IF A-2 THEN AS*=”X” 

IF A=3 THEN AS="2” 

PRINT#2 , AS ; CHRSC32) ; : NEXT : P 

RINTttE : NEXT 

PRINT#2 : CLOSE 2 

CLOSE 1 

END 

GET 2S : IF Z$="S" THEN 330 
RETURN 

PRINTCHRSC147) "PREMI UN TAS 
TQ PER CONTINUARE ...” 

PRINT ”0 ’F' PER FINE STAMPA 


410 GET 2$ : I F 2$=”F" THEN 340 
420 IF Z$o’”’ THEN PRINTCHRSC 14 
7 ) ” ’ 5 ’ PER INTERROMPERE LA 
• 5TAMPA , " : RETURN 
430 'GOTO 410 
440 END 



26 - Commodore Computer Giub 




GRAFICA 


Usa asano di grafica 


Una nuova iniziativa che sicuramente sarà 
apprezzata dai nostri lettori più affezionali; 
ma anche dai nuovi utenti Commodore 


di Alessandro de Simon e 


“FI 

U ove è possibile trovare ini or- 
inazioni su un determinato argo- 
mento?" 

Chi non si è mai posto questa do- 
manda scagli il primo computer! 

Poiché, anche noi della redazione, 
tacciamo ormai fatica a rintracciare i 
titoli ed i programmi pubblicati sulla 
nostra rivista, ecco clic abbiamo de- 
riso di pubblicare, ogni mese, un e- 
kneo ragionato degli argomenti af- 
frontati di recente su Commodore 
Computer Club, 

in queste pagine troverete ì titoli di 
articoli e programmi riguardanti solo 
la grafica computerizzta, pubblicali 


nelTarco degli ultimi dodici mesi: da 
ottobre T 8ó (n.35) fino a settembre 
"87 (n ,45). 

Fra parentesi è riportato il numero 
del fascìcolo, mentre un breve rias- 
sunto ìndica succintamente il conte- 
nuto del farti colo stesso. 

I numeri di Directory, che conten- 
go n o gl i c ve ntu ali file p rog ramina* si 
possono determinare tenendo conto 
che al n.35 di C.C.C? era associato il 
n.l di "Directory'? 


Naturalmente promettiamo di pub- 
blicare, mese per mese, reieneo ag- 



disparali* 


(35) G rapine expander C/128 in 80 
colonne 

Recensione che descrive la sintassi 
dei comandi aggiuntivi in Basic rela- 
tivi al software disponibile su disco 
presso la Systems Editoriale, 

(35 ) Tutto xugìi sprite 
Un articolo didattico per sapere tutto 
ciò che desiderate sulla gestione di u- 
no sprite. 

(35) Cancella finestre schermo 
Routine Basic deirencielopedia che 
consente di cancellare una porzione 
rettangolare del video di un C/64. 



Commodore Computer Club - 27 


GRAFICA 


(35) lampeggio righe schermo 

Roul ine Basic dclfciiddopcdia che 
rappresenta una delle numerose ver- 
sioni disponibili per far lampeggiare 
una riga di lesto del video di un 
C/64. 

(36) Conversione di coordinate 
Routine Basic dell'enciclopedia che 
converte coordinate cartesiane in po- 
lari e viceversa. 

(36) Definizione Sprite 
Routine Lm. del rene iclo pedi a che 
consente di simulare, in Basic, la tec- 
nica di definizione di uno sprite pro- 
pria del Simon s Basic. 

(36) Sprite Tool 

Routine Lm. del Le nddopedia che 
consente di individuare tutti i para- 
metri relativi ad un determinato spri- 
te mediarne una semplice Sys dotata 
di ben otto parametri, 

(36) Collisione 

Routine Lm. dcUencìclopedia che 
consente di determinare facilmente 
l'eventuale collisione tra due sprite, 

(37) Si ivi t 

Quattro routine Lm. del l'enciclope- 
dia che riproducono lo scroti ing del 
video (in modo lesto} nelle relative 
direzioni possibili. 

(37) Scrine rotanti 

Routine Basic del fe nddopedia che 


visualizza sullo schermo del C/64 
scritte scorrevoli ad una velocità 
p rogram inabile, 

(37) Piai in media risoluzione 
Routine Basic delfencidopedia che 
consente di adattare lo schermo in 
modo testo del C/64 in un’area grafi- 
ca di 80x50 punti. 

(38) Koala per C/16 

Un breve programma in Basic che 
consente di sfruttare completamente 
le risorse grafiche del piccolo com- 
puter. 

i 

(38) Mìni disegni con la tua stam- 
pante 

Un divertente programma in Basic 
per creare simpatici disegni da ripor- 
tare su carta, 

(38) fi primo giorno di scuola 
Alcuni programmi grafici dimostra- 
tivi per il C/64 dotato di emulatore 
Gw-Basie, 

(38) Dmw in bassa risoluzione 
Routine Basic delle nddopedia per 
tracciare semplici disegni sullo 
schermo del C/64. 

(38) Due programmi ... ipnotici! 
Richiedono le routine di fonia q uesu 
due brevissimi programmi per C/64 
che generano meravigliosi effetti gra- 
fici programmabili. 


(39) Il giardino elettronico 
Un brevissimo programma grafico, 
che richiede le routine dì Toma, per 
la generazione di meravigliosi dise- 
gni pseudo-casuali sullo schermo del 
CY64, 

(39) Sprite scanner 

Routine Basic d cirenei ciò pedi a che 
permette di esaminare la memoria 
alla ricerca dell'arca RAM che con- 
tiene le informazioni relative ad un 
certo sprite. 

(39) Una tavolozza per il tuo C/128 
Un programma grafico scritto in Ba- 
sic 7,0 che consente di "eseguire dise- 
gni sullo schermo del potente com- 
puter in alta risoluzione. 

(39) Riempi schermo 
Routine Lm. del le nddopedia che 
riempe istantaneamente lo schermo 
del C/64 con un carattere preceder; te- 
mente indicato. 


(40) Un anima(zìone) per l Amiga 
Recensione dei programmi "Acgis A- 
rumator" e "Aegis Images' per 
Amiga. 


(40) Page set/reset 

Routine LM ddlencidopcdia per se- 
lezionare la pagina testo o la pa- 
gina grafica. 



ce - Commodore Computer Club 


GRAFICA 


(39) Caleidoscopio 

Un semplice programma, per C/64, 
per la generazione di suggestive im- 
magini simmetriche e casuali, 

(39) Cune e simmetrie 
Un brevissimo programma grafico, 
per C/16, Plus/4 e C/l 28. che serve a 
generare bellissime immagini sim- 
metriche pseudocasuali. 

(39) Accensione sprite 
Routine Basic deirencidopcdia che 
provvede alla gestione completa del- 
le operazioni elementari che riguar- 
dano uno sprite, 

(39) Movimento sprite 

Routine Basic dell enciclopedia che 
consente di visualizzare la posizione 
attuale di un qualsiasi sprite. 

(49) Page CÌear 

Routine LM dell'enciclopedia per 
cancellare la pagina grafica. 

(40) Page color 

Routine LM de JTen ciclo pedi a per 
accendere o spegnere un singolo 
punto nella pagina grafica. 

(41) Hopaìong: matematica e fantasia 
Un 'applicazione m atemat ico-g rafie a 
per plottare meravigliose immagini 
pseudo-casuali con le routine di 
Toma. 

(41) Grafica in Gw- Basic 
Un breve programma che chiama in 
causa numerosissime istruzioni gra- 
fiche del simulatore Gw-Basie, 

(41) Koala printer 

Come riportare su stampante un di- 
segno in alta risoluzione eseguito 
con un C/16 oppure con un Plus/4, 

(41) Grandezze analogiche 
Routine Basic deirencidopcdia che 
utilizza la posizione reciproca di piu 
sprite per visualizzare grandezze 
proporzionali. 

(42) Rotazione dì solidi in Hi-Res 
UrPapplìcazione grafica di eccezio-. 
naie interesse per coloro che utilizza- 
no le routine dì Toma con il C/64. 

(42) Un pollo a testa, anzi nessuno 
introduzione alla statistica mediante 


un programma che richiede il pre- 
ventivo caricamento del simulatore 
Gw- Basic* 

(43) Quando uno schermo non basta 
Un breve programma in Basic c l.m. 
(con disassemblato commentato) per 
tenere costantemente in memoria 
due schermate grafiche del C/128, ri- 
chiamabili a piacere. 

(43) Grafica in Basic 3 5 e. 7,0 

Due programmi, validi per C/16, 
Plus/4 c C/128, idonei per studiare le 
potenti istruzioni grafiche dei com- 
putercitati, Ed inoltre una routine di 
hard copy per lo schermo in alta riso- 
luzione del C/128. 

(44) Sprite mover 

Una routine l.m. deirencidopcdia 
(con disassemblato commentato) per 
spostare uno sprite sullo schermo del 
C/64 e rilevare eventuali collisioni, 

(44) H/Copy Hi-Res 

Una routine l.m. deirencidopcdia 
(con disassemblato commentato) per 
riportare su caria una schermata in 
alta risoluzione del C/64. 

(45) À grandi linee 

Un programma per capire in che mo- 
do il C/64 gestisce la mappa di. me- 
moria Rom in cui sono allocati ì ca- 
ratteri di cui dispone. 


(45) Artisti si diventa 
Un programma di mi ni-CAD, scritto 
in Basic, valido per C/16, Plus/4 e 
C/128. 

(45) Espansione gratuita di memoria 
Ram 

Come disporre di parecchie centi- 
naia di byte in più ricorrendo ad un 
semplice trucco di programmazione 
sul C/16, 

(45) Il peso della velocità 
Inserto didattico che dimostra, con 
vari c semplici programmi, l i inpor- 
tanza della velocità di elaborazione. 

(45) Incornicia risultati 
Routine in Basic delFencìclopcdìa 
che permette di rendere più efficace 
la visualizzazione di messaggi e valo- 
ri numerici, 

{45} Uno schermo in frantumi 
Programma l.m, con disassemblato 
commentato, per utilizzare, con C/64 
e drive, le .schermate grafiche del pro- 
gram ma Print Shop all scopo di otte- 
nere effetti grafici interessanti. 

(45) Programma grafico universale 
Un programma in Basic che funzio- 
na allo stesso modo se digitato su 
C/16, Plus/4, Amiga, C/64+ Emula- 
tore Gw-Basìc e C/128! 



Commodore Computer Gfub - 29 




DIDATTICA 


Peek, Poke 
e Sys per C/64 

Continua la rassegna dei comodi comandi 
Basic che consentono anche l’accesso 
a routine in linguaggio macchina 


di Koberto M orassi 


-P er resecare {cioè riportare ai va- 
lori iniziali) i puntatori RAM del Si- 
stema Operativo che siano stati alte- 
rati, non c sempre necessario il Reset 
completo (SYS 54738) che, oltrerutto, 
effettua il NEW del programma in 
memoria* 

Ecco una serie di SYS, che rimetto- 
no a posto specìfici gruppi di punta- 
tori, e che saranno apprezzate so- 
prattutto dagli utilizzatori 'evoluti" 
dal momento che possono essere u- 
sate solo in casi particolari: 

SYS 65418 

Resetta i puntatori di input / output 
compresi fra S03 1 4 - 0333 (dee* 788 - 
819), e cioè SAVE, LO AD, STOP, 
IRQ, NMI, RRK eccetera. 

SYS 58451 

Rosetta i puntatori all’inizio della pa- 
gina 3 ($0300 - 030 R, dee. 768 - 779), 
comprendenti 11 LIST, warm -start 
messaggi di errore e decodifica paro- 
le Basic. 

SYS 58870 

Resetta i puntatori di inizio c fine 
della zona Basic (S2B-2C $37-38: 
dee. 43-44, 55-56). 

SYS 58303 

Resetta il puntatore 1J5R, quelli arit- 
metici, quelli di inizio e fine Basic, e 
Ja routine CHRGET ($73-8 A, dee. 
115 - 138). Non si può eseguire da 
programma, perchè genera un Syn- 
tax Error. 


SYS 58792 

Resetta il chip video VIC-II a$D0OG- 
D02E, comprendente i puntatori de- 
gli sprites, i colori di schermo, i ban- 
chi di memoria, eccetera. 

SYS 65409 

Inizia lizza lo schermo, resetta i colo- 
ri dei caratteri, tondo e bordo, 

SYS 64760 

Effettua un RESET abbreviato del si- 
stema. Differisce dal SYS 64738 per- 
che non controlla la presenza del 
cartridge, non azzera ic pagine di 
memoria 2-3. e non esegue il RAM- 
test. 

SYS 64763 

Come il precedente, però non resetta 
ì puntatori di input - output, 

Trucchi di programmazione 
in L.M. 

Acquisizione dati semplificata 

La sequenza di comandi*., 

JSR $ÀEFD 
JSR SB79E 

...che salta 3 a virgola nel testo e poi 
raccoglie un dato numerico (a singo- 
lo byte) nel registro X, può essere .so- 
stituita con... 

JSR SB7F1 


...che esegue la stessa operazione con 
un risparmio di 3 bytes. 


Rilocazione dei wedges 

Supponiamo di voler inserire un 
wedge, ad esempio, nella routine di 
warm-start Normalmente si usa un 
wedge Toader di questo tipo: 

0334 LDA $3F ;carica low-byte 
0336 STA $0302 ;nel puntatone 
0339 LDA $03 ;carica high -byte 
033 B STA $0303 
033 E RTS 

033F inizio del wedge 


In questo caso, eseguendo SYS 820, 
il loader attiva il wedge inserendo il 
nuovo indirizzo nell'apposito punta- 
tore. Se si vuole rilocare il tutto in al- 
tra zona di memoria, sorge un pro- 
blema: anche ammesso che il wedge 
sia rilocabile (cioè privo di JSR e 
JMP interni) il loader non lo è, per- 
chè si deve modificare il nuovo indi- 
rizzo da inserire nel puntatore* 

Un semplice metodo per realizzare 
un loader rilocabile sfrutta il fatto 
che, quando si comanda un SYS, fin- 
dirizzo di quest’ultimo rimane me- 
morizzato in $14-15 (dec.#0-21) da 
cui può essere prelevato ed inserito 
nel puntatore previa aggiunta di un 
offset che lo riporta all'inizio del 
wedge. Esempio: 


30 - Commodore Computer Club 



DIDATTICA 


0334 LDA $14 ;legge Eow-bvte dell'in- 
dirizzo del SYS 

0336 CLC 

0337 ADC #$10 raggiunge l'offset 

di inizio wedge 
(16 bytes) 

0339 SI A $0302 ;copia nel puntatore 
033C LDA $15 ; legge high-byte 
033 E ADC #$00 ;i nere menta se è 

in overflow 

0340 STA $0303 icopia nei puntatore 

0343 RTS 

0344 inizio del wedge 


Sostituzione dei JMP interni 

Se la rilocazione di un programma 
in Lm. è impedita dalla presenza di i- 
st razioni JMP interne ai programma 
stesso, si può in genere aggirare l'o- 
stacolo sostituendo il JMP con un 
"brandì ' obbligato, purché si cono- 
sca con precisione il valore di alme- 
no uno dei flags di status. Ad esem- 
pio, ii segmento... 

COOG LDA #$00 
C002 STA SFB 
C004 JMP SC020 

„,si può sostituire con,,, 

COOO LDA #500 
C002 STA SFB 
C004 BEQ $C020 

^rilocabile. perchè fistruzione LDA 
#$00 lasda ovviamente settato il flag 
Z, In caso di incertezza si può ricor- 
rere al trucco di rese ttare il flag di o- 
verflow (raramente usato) ed esegui- 
re il b ranch con BVC: 

COOO LDA $FC 
C002 STA SFB 
C004 CLV 
C005 BVC SC020 

Tutto ciò vale se la distanza fra i 
due indirizzi è inferiore a 128 bytes: 
se fosse superiore, si può sempre ese- 
guire un “doppio brandi” proteg- 
gendo ii “brandi" intermedio dal 
flusso del programma con un’istru- 
zione BIT: 

COOO LDA #$00 
C0O2 STA SFB 


C004 BEQ SCO 90 


C08F BIT ;($2C: salta ì due bytes 

bytes che seguono 
C090 BEQ SCODO 


Word processore 

e colori default 

Nei word processor sono in genere 
previsti dei comandi per modi Beare 
il colore dei fondo, del bordo e dei ca- 
ratteri, così da adeguarli ai propri gu- 
sti nel caso questi non corrisponda- 
no ai valori di “default" inseriti net 
programma. 

Con qualche modifica si può però 
personalizzare il w,p, modificando 
questi valori in modo da avere i colo- 
ri preferiti fin dall'inizio. Ecco come 
fare per due fra i w.p, più popolari: 
WORD PRO 3+ e EASY SCRIPT. 

ET ovvio che le note che seguono 
potrebbero non andar bene perla co- 
pia di word processor in vostro 
possesso, 

Wùrdpro 3 + 

Caricate il w.p. im memoria, ma 
senza dare lì RUN. Supponiamo che 
i vostri colori preferiti siano indicati 
dai seguenti parametri; 

F = colore del fondo (codice POKE) 

B = colore del bordo (cod. POKE) 
C = colore dei caratteri (cod. POKÉ) 
Fi = colore dei caratteri (cod. 
CHR$). 

Per esempio: caratteri blu su fondo 
grigio chiaro e bordo marrone: 

F= 15; B = 9; C=6; H = 31 

Date ì seguenti comandi in modo 
diretto, sostituendo ai parametri i co- 
lori prescelti: 

POKE 2084.F: POKE 2079, B: POKE 
2094, H: POKE 5953.C 

Infine salvate il programma cosi 
modificato con altro nome (o sti un 
altro disco). 

Easy Script 


Caricate il w.p, in memoria, senza 
dare il RUN. Date i seguenti coman- 
di in modo diretto: 

POKE 2525 JR POKE 2530, B 

in cui F è il colore del fondo prescelto 
(cod. POKE) e B è il colore del bordo 
e dei caratteri (cod. POKE), Salvate il 
programma con un altro nome, o su 
un altro disco. 

Notate che in Easy Script il bordo e 
i caratteri hanno inizialmente lo 
STESSO colore; se volete differen- 
ziarli, dovete farlo manualmente, do- 
po il Rum con Control-3. 

ÀntUNew istantaneo 

Se avete accidentalmente resetiato 
il computer o dato il NEW, potete re- 
cuperare COMPLETAMENTE il 
programma Basic in memoria (quin- 
di anche modificarlo, listarlo e dare il 
RUN) con questa miracolosa se- 
quenza di comandi da digitare in tor- 
ma abbreviata, in modo diretto c tutti 
di seguito, cioè senza spazi e con un 
unico RETURN. 

PGKE2050J: SYS4229L POKE4Ó, 
PEEK(35)-(PEFK{781)>253): 
POKE45,( PEEK{78 J ) F 2)AN D255 

Lampeggio durante il Gel 

Richiamando con un GOSUB que- 
sta subioutine{che sfrutta i registri di 
controllo del cursore e il contatore di 
tastiera) il programma sì arresta, fa- 
cendo lampeggiare il cursore sullo 
schermo: premendo un tasto, il cur- 
sore si spenge e il carattere del tasto 
viene assegnato alla variabile A$. 

1000 POKE 198,0: POKE204.0: 

WAIT198,!: WAIT2Q7JJ; GETAS; 
POKE2G4J: RETURN 


SCHEDA TECNICA 

Note divulgative per applicazioni 
varie. 

Idoneo per il solo computer C/64, 
Articolo consigliato ai lettori esperti 


Commodore Computer Glub - 31 




TELECOMUNICAZIONI 


La Banca in Casa 


Uno sportello del Credito Emiliano 
da installare comodamente sul vostro C/64 


di Roberto Mango 


X I servizio bancario automatizzalo 
ha ormai preso piede anche in Italia: 
quasi tutte le banche hanno adottato 
un metodo di cassa continua (Banco- 
maio equivalenti) e il gradimento del 
pubblico è comprovato dalia larga 
diffusione di sportelli che per me (to- 
no il prelievo di denaro lìquido a 
qualunque ora senza esser costretti a 
lare la fila davanti agli sportelli. 

Il servizio offerto da! Credito Emi- 
liano si inserisce nel filone dei servizi 
telematici dal momento che permette 
ai propri clienti di usufruire dei servi- 
zi bancari più richiesti, impartendo 
ordini da casa propria e in qualun- 
que orario. 

Come asserisce il chiaro ed esau- 
riente manuale fornito a corredo del 
software, è possibile un nuovo modo 
dì lavorare, che alleggerisce, da una 
parte, il lavoro degli impiegati e, d'al- 
tro canto, permette ai propri clienti li- 
na maggiore libertà ed una minore 
perdita di tempo, 

IT consentito. Tra l'altro, ordinare li- 
bretti di assegni, cambiare denaro in 
valuta estera o trave liers chequcs, e 
ritirarlo dopo un paio di giorni; op- 
pure verificare il saldo del proprio 
conto corrente o l'esito di un assegno, 
senza alcun problema di orari. 

Per usufruire di “RancainCa$a'\ il 
servizio del Credito Emiliano di cui 
stiamo parlando, è necessario un 
Commodore 64. una qualsiasi me- 
moria di massa (anche un semplice 
registratore a cassette?) e un modem 
del tipo Total Telecom munìcatìon 
della Teldearning System: il software 
necessario al collegamento viene for- 
nito al momento della stipula del 
contratto con una qualsiasi filiale del 
Credito Emiliano, 


Non sarà certo possibile a chiun- 
que accedere alle informazioni sul 
vostro conto perchè il programma è 
protetto dall'accesso di intrusi in tre 
modi : 

* è presente un primo un codice, diverso 
per ciascun software assegnato a ogni u- 
tenie, senza il quale il sistema stesso 
non gira. 

* un secondo numero di codice indivi- 
duale. a neh esso diverso per ciascun u- 
teme, controllalo dai sistema centrale 
solo ai momento dei collegamento , 

* un digit di controllo relativo ad ogni 
numero di conto corrente, controllato 
aneli esso dal computer centrale. 

Il dischetto provato non risulta pro- 
tetto da copie, per cui l'utente può 
realizzare una copia di backup nel 
caso di perdita accidentale del pro- 
gramma o di smarrimento del di- 
schetto. 

Il collegamento avviene in tre fasi: 

* la prima avviene localmente, prima 
di stabilire il collegamento via mo- 
dem: il “colloquio" fra utente e C/64, 
in cui vengono formulate le richieste 
da inviare alla banca, 

* la seconda fase è il contatto telefo- 
nico via modero con il computer del 
Credito Emiliano di Reggio Emilia. 

* nella terza fase i dati di “ritorno" 
vengono presentati in un'unica scher- 
mata, con la possibilità di selezionar- 
li singolarmente o di stamparli. 

Il frazionarne nto presentato risulta 
più conveniente di un costante colle- 
gamento: una sessione dì comunica- 
zione telefonica richiederà, infatti, 
non più di 2 scatti, o di 4 se la comu- 
nicazione è effettuata in traffico inte- 
rurbano e in ora di punta. 


Se. invece, la scelte avvenissero in 
contatto costante condii computer 
centrale, la spesa telefonica salirebbe 
anche notevolmente (per selezionare 
cinque osci scelte ci si mette in media 
5-7 minuti, ma è molto di più se si ri- 
chiede una o più stampe o se si vuole 
verificare il proprio conto). 

Descrìviamo ora il programma a 
noi pervenuto su dischetto: 

Dopo l'introduzione e la schermata 
di presentazione, compaiono le brevi 
Spiegazioni del funzionamento: con 
FI si annulla un campo, con F3 sì 
memorizza la scelta appena fatta, 
con i 5 si elimina una schermata e si 
torna al menù cancellando la scelta 
precedentemente selezionata, con F7 
si memorizza la scelta e poi si toma 
al menù principale, premendo 
CTRL-H si ottiene un aiuto in quasi 
Oimi momento del programma, e con 
CTRL.-P si può ottenere fhardcopy 
dei video, 

A questo puntosi inserisce il codice 
numerico e quello personale: ambe- 
due sono resi non visibili, per garan- 
tire la segretezza se si fosse costretti 
ad operare in presenza di sguardi,,, 
indiscreti. 

Solo se si verifica la corrisponden- 
za. verrà caricata la seconda parte del 
programma. 

Dal menù principale, che appare in 
seguito, >si possono selezionare sei 
funzioni: 

- Informazioni: si possono scegliere 
informazioni su consulenze finan- 
ziarie (gestione patrimoni mobiliari, 
fondi comuni di investimento), su 
prestiti personali (Bancofa miglia, 
prestito casa, prestito turistico ISEA). 
e su servizi (Prontobanca, Diners, 
Viaeard. Pensione comoda. Utenze). 


32 - Commodore Computer Club 


TELECOMUNICAZIONI 


Le informazioni accessibili con que- 
sta opzione sono "incorporate" nel 
programma e non è quindi necessa- 
rio stablire un collegamento via mo- 
dem per ottenerle, 

- Comunicazioni; questa, e quella suc- 
cessiva. sono le opzioni più impor- 
tanti del pacchetto: limitandosi a di- 
gitare il numero di liliale e. ovvia- 
mente, il numero del conto, si può co- 
municare alla banca indicata la pre- 
notazione di uno o piu carnet di asse- 
gni, la prenotazione di assegni circo- 
lari, la prenotazione della valuta e- 
stera, rinvio di messaggi in formato 
libero e la richiesta di nuove funzioni 
tra quelle elencate nel programma 
stesso, 

- Richieste: in questa opzione posso- 
no essere richiesti il saldo del C/C. la 
lista dei movimenti del proprio con- 
to, il valore dei cambi valutari del 
momento e f esito dei nostri as- 
segni. 

- Elenco operazioni effettuate: rappre- 
senta, in effetti, una conferma per ve- 
rificare che tutte le nostre scelte siano 
state accettate correttamente, 

- Cambio parola chiave : il computer 
chiederà la parola chiave attuale c 


per due volte 3 a nuova parola (per 
maggior sicurezza); a! successivo 
collegamento la nuova parola chiave 
sarà riconosciuta valida dal compu- 
ter centrale. 

- Collegamento: dopo aver effettuato 
le scelte, il computer stabilirà auto- 
noma mente U collegamento cori il 
centro dati del Credito Emiliano, 
chiedendo solo se Putente si trova 
fuori dal distretto di Reggio Emilia c 
stabilire se formare, o meno, il prefis- 
so tei esci etti vo, Se il collegamento 
non potesse avvenire (per linee occu- 
pate o altri problemi), verrà tentato 
un nuovo collegamento per tre volte 
di seguilo, dopo di che il programma 
chiederà conferma prima di procede- 
re con altri tentativi. 

Una volta stabilito il collegamento. 


il computer avvertirà quando i dati 
sono in trasmissione ose la linea è di- 
sturbata: una volta concluso il colle- 
gamento il computer avvertirà l'uten- 
te delia sua buona riuscita, presen- 
ta ndo t con un menù, le richieste an- 
date a buon fine: le risposte selezio- 
nate dall'u lente, tramite la pressione 
del tasto corrispondente, appariran- 
no sul video: sarà possibile a questo 
punto stamparle (CTRL-P), inter- 
rompere il lavoro con CTRL-Q, op- 
pure iniziare una nuova sessione di 
lavoro con F3. 

11 Credito Emiliano è una delle pri- 
me banche italiane^ offrire un serv i- 
zio del genere e garantisce continui 
aggiornamenti del programma, com- 
presi nel prezzo del servizio stesso. 


GIOCHI 



Quattro recensioni su altrettanti 
videogame per il meraviglioso 
computer Amiga 


ili Luigi Catlegari 


ITEMS: Per prendere, usare, dare og- 
getti od ottenere la lista dì quelli in 
nostro possesso. 

TALK: Per colloquiare, proprio co- 
me in un gioco di avventura sofistica- 
to. con le altre creature del Mondo 
fatato. Le sotto-opzioni permettono 
di parlare (SAY), urlare (YELL) e ri- 
chiedere (ASK). 

GAME: Permette di gestire il pro- 
gramma, terminandolo (QUIT), so- 
spendendolo (PAUSE) oppure elimi- 
nando musica ed effetti sonori. 


Inserito il dischetto alla richiesta 
del Workbeneh inizia una gradevole 
presentazione grafica e sonora con 
un libro (con tanto di figure) che. co- 
me in un cartone animato, si sfoglia 
da solo. 

1 nostri eroi sono tre fratelli, corri- 
spondenti nella pratica a tre sagome 
leggermente diverse per abbiglia- 
mento e capigliatura, ciascuno dota- 
to dì vane “vite”, donate da una fati- 
na. La loro missione consiste nel ri n- 


S e hai acquistato da poco u n Ami- 
ga, vorrai certamente procurarli del 
software che sia in grado di esaltarne 
le straordinarie potenzialità. 

Ecco, quindi, alcuni commenti su 
quattro giochi facilmente reperibili 
anche in Italia, 


A che gioco 

giochiamo? 


The Fmry Tale 

(cori figurazione minima: Amiga 512K) 

Prodotto dalla Mìcrollìusions, si 
tratta di un classico gioco di arca- 
de/adventure. La scena di gioco è 
molto ampia, tanto che lo schermo 
funge da finestra, scorrevole fluida- 
mente, centrata sul nostro protagoni- 
sta, Il gioco, secondo una caratteristi- 
ca che sì sta affermando come stan- 
dard per Amiga, viene controllato in- 
teramente tramite mouse, agendo su 
appositi ideogrammi visualizzati co- 
stantemente sulla sezione inferiore 
del video. 

Il programma è fornito in elegante 
confezione (il prezzo, non per niente, 
sì aggira sulle centomila lire) con ma- 
nuale molto artistico su carta tipo 
pergamena. 

34 - Commodore Computer Club 


tracciare il talismano che protegge il 
villaggio, da dove parte il gioco, dalle 
forze del Male. 

Ai fini di protezione unti-pirati, 
vengono quindi richieste tre parole 
d’ordine, leggibili sul manuale origi- 
nale; poi inizia il gioco vero e proprio 
con la selezione di alcuni menu, cia- 
scuno dotato dì sottomenù. Vediamo 
a che servono: 



BUY: Permette 1 acquisto di cibo, 
frecce, spada, totem, mazza. Parco o 
le pozioni magiche. Il denaro, speso 
quello in dotazione, si può reperire 
nel gioco facendo bene atiezione ài 
luoghi che si percorrono, 

MAGIC: Permette dì sfruttare gli og- 
getti magici trovati nel corso della 
partita. Ovviamente non sveliamo 
che cosa sono e come sì usano, visto 
che è una delle parti più interessanti 
del gioco. 

La scenografìa è coloratissima e 
ben rifinita. Si pensi che. quando' si 
rende necessario, la porzione dì sce- 
na viene caricata da dischetto (in un 
batter di ciglio): evidentemente 500K 
di memoria centrale non bastavano e 
sé sono sfruttali anche gli BSOKdel di- 
schetto e la velocità delfhardware di 



GIOCHI 



sto suo paci re trasformato in falcone 
da un misterioso incantesimo. Per 
guarirlo occorre spezzare l' incantesi- 
mo prima che sia troppo tardi; una 
specie di gigantesca bussola segna il 
trascorrere del tempo, all esaurimen- 
to del quale il gioco termina ed il sul- 
tano dovrà rassegnarsi a svolazzare 
tra i rami per il resto dei suoi giorni. Il 
modo di rompere Pine antesi mo deve 
scoprirlo Sinbad, cioè voi. 

Durante il gioco si può colloquiare 
con sei personaggi, che possono sia 
entrare a far parte della nostra com- 
pagnia (e quindi sempre disponibili!, 
che essere richiamati ogni volta clic 
serve, 1! dialogo avviene tramile fu- 
metti (per l 1 interlocutore) e un certo 
numero di risposte selezionabili col 


mouse Queste riducono il numero di 


varianti possibili (aumentate solo 
dall'umore del momento del nostro 


interlocutore), ma semplificano di 
molto il gioco rispetto ad un'avventu- 
ra classica, tipo 'The Pawiv. 


I personaggi con cui possiamo par- 
lare sono; Sylphani, il fratello del Ca- 
liffo Danni, la strega ex- moglie del 
califfo Libimi a* lo stregone Shaman, 
la Zingara* il Genio della Lampada. 
Si noti che la personalità e la funzio- 
ne di ciascuno dì questi personaggi è 
tutta da scoprire, impiegando molto 
tempo nel corso di numerose partite 


Ad esempio, la Zingara, se opponu- 
natamente lusingata, può rivelare 
quasi sempre la posizione geografica 
ove rintracciare personaggi o nemici 
e può essere molto generosa con noi; 
Da rum se preso col dovuto rispetto 
ed evitando argomenti scottanti* può 
spiegarci i segreti per battere a duello 
o superare le varie disgrazie del 
gioco. 

Le loro personalità spesso collido- 
no: ad esempio sarà impossibile te- 
nere nella nostra compagnia, per 
molto tempo insieme. Lìbitma e 
Sylphani; questa scapperà se non al- 
lontaniamo la prima, che però è uti- 
lissima come stregai ci toccherà an- 
darla a cercare per tutto il globo! 

Ciò che rende affascinante il gioco 
è che la maggior parte degli avveni- 
menti è da scoprire, dialogando con ì 
vari personaggi ed andandosene a 
zonzo per il mondo a bordo del no- 
stro Sabralus. Quando qualcuno ci 
dice di andare da qualche parte c ne- 
cessario consultare, per mezzo di u- 
na lente di ingrandì me nto(!)Ja map- 
pa animata del globo; in seguito dob- 
biamo. pazientemente, tracciare la 
rotta ed avventurarci tra tempeste ed 
insidie varie. 

Il gioco si suddivide spesso in nu- 
merosi sotto-giochi: per vederli tutti è 
necessario completare parecchie par- 
tite, ciascuna con proprie caratteristi- 
che arcade. Ad esempio, bisogna ab- 
battere alcuni pterodattili a colpi di 
balestra (grafica in tempo reale, qua- 
si tridimensionale), recuperare nau- 
fraghi dribblando, gli scogli (in 3D), 
uccidere a colpi dì fionda tre ciclopi, 
duellare con il Prìncipe Nero, leoni e 
mìtiche creature, risalire dal fondo di 
crepacci aperti da terremoti ed altre 
riposanti attività del genere. La buo- 
na grafica e la velocità dì movimento 
sono veramente notevoli. 

Dicevamo che vi sono più fasi stra- 
tegiche: in una di queste Sinbad deve 
guidare, per mezzo di una mappa, gli 
eserciti del Califfo per combattere 
quelli del Principe Nero che vuole 
entrare nel palazzo. Quando poi si 
intraprendono viaggi per mare, biso- 
gna decìdere quante persone delLe- 
quipaggio inviare per reclutare nuo- 
ve leve; quando sì approda su di una 
nuova terra, è necessario stabilire 
quanti personaggi portare con se per 


Commodore Computer Club - 35 


GIOCHI 



gestione! Lo scorrimento è fluidissi- 
mo, gli effetti sonori sono limitati, ma 
vSlidi. specialmente durante le lotte 
con i numerosi nemici che si aggira- 
no: scheletri, briganti eccetera. 

L'idea del programma sembra vali- 
da, anche se semplice, cosi come il 
miscuglio tra avventura (che costrin- 
ge a riflettere) e arcade (lotte a colpi 
di mouse, pardon, spada); il tutto 
condito dalle caratteristiche extra 
della grafica e del suono Amiga che, 
pur se sfruttati in piccola patte, per- 
mettono di surclassare i vecchi e glo- 
riosi videogiochi del C 64. 

Barbarian 

{configuratone minima: Amiga 5Ì2K ) 

Si tratta di un classico gioco arcade, 
interamente controllato da mouse, 
dove si controlla un omaccione che 
deve combattere contro nemici ed in- 
sidie mortali per uccidere il malvagio 
mago Drax. 

Nella parte inferiore de) video sono 
p rese n ti ale u ni i d eog ra m m i eh e co n - 
sentono, al nostro omino, di svolgere 
varie azioni: muoversi avanti ed in- 
dietro (ovvero verso sinistra o verso 
destra sullo schermo bi-dimensio- 
nale), scendere o salire (quando sono 
presenti scale), sferrare colpi di spa- 
da. de porla e lanciarsi a lottare a ma- 
ni nude, saltare ostacoli. 

Pigiando il pulsante destro del topo 
si commuta un sotto menu, sempre 
visualizzato nella sezione inferiore 
del vìdeo, che permette di raccogliere 
e depositare oggetti, nonché afferrare 
o riporre armi (secondo l'avversario 
che vogliamo affrontare). Inoltre so- 
no visualizzate le lancio raccolte ed il 
numero di vite rimaste. 

Il gioco procede attraversando vari 
schermi il cui scorrimento non è con- 
tinuo ma avviene, in un colpo solo, 
quando viene raggiunto il bordo de- 
stro o sinistro del video. Inutile dire 
che la stenografa è estremamente ri- 
finita e coloratissima, specie se la si 
confronta con quella riproducibile 
da un C ''64. A proposito, chi avesse 
visto la versione per C/64 di questo 
stesso gioco, tenga conto che la ver- 
sione Amiga c notevolmente diversa 
(ovviamente migliore sotto quasi lut- 
ti i punti di vista). 


Qualche riserva, invece, è da espri- 
mere sulle animazioni grafiche, pur 
se sembra evidente che Amiga riser- 
va ancora molte difficoltà ai pro- 
grammatori, come è ovvio per una 
macchina così complessa e nuova. 

Infatti i movimenti del nostro barba- 
ro non sono proprio il massimo della 
fluidità, così come quelli dei mostri 
suoi avversari. 

Confrontato con i primi program- 
mi per C/64, questo Barbarian è in- 
comparabilmente superiore; se, poi. 
pensiamo agli enormi progressi fatti 
dai videogiochi per il C 64 nel tempo, 
pur essendo una macchina dalle ca- 
ratteristiche hardware decisamente 
patetiche se confrontate con quelle di 
Amiga, non possiamo fare a meno di 
rilevare che. tra qualche tempo, i gio- 
chi saranno spaventosamente belli, 

A proposito di grafica, piacevole è 
ratìimazìone che precede Li nz io del 
gioco ove si vede, come in un bel car- 
tone animato, un barbaro che rompe 
una catena con la spada: il realismo è 
impressionante. 

Validi anche gii effetti sonori, seb- 
bene siano quasi sempre sincroniz- 
zati male con fazione. Visto che il 
gioco è stato sicuramente scritto in 
buona parte in linguaggio t cd es- 
sendoci nota le difficoltà di gestione 
dei vari "task" in un ambiente inulti- 
programmahile come Amiga, non 
possiamo non perdonare i program- 
matori del videogame che. come già 
detto, sono anche “novellini" di que- 


sta complicatissima macchina; sia- 
mo celli, comunque, che si realizzerà 
di meglio con qualche sforzo in 
più. 

Tutto sommato Barbarian è un bei 
gioco, specie se si considera l'ancora 
scarno panorama di videogiochi nel 
software Amiga, 

Una nota - si consiglia vivamente 
Tacqui sto del Lodgi naie, disponìbile 
ad esempio presso la Lago Snc (Vìa 
Napoleone. 16 - Como) non solo per ì 
consueti motivi di ordine morale e 
pratico (elegantissima la confezione 
cd i gadget s) ma anche per il fatto che 
il dischetto è dotato di un'originale 
protezione hard/so fi (che ovviamen- 
te non sveliamo) in grado di dare 
molti problemi ai pirati cd ai copia- 
tori di dischetti. 


Sinbad ed il Trono del Falcone 

(configurazione minima: Amiga 5I2K, 
Kiekstart Ì.2, drive supplementare) 

Si tratta di uno stupendo gioco, pro- 
dotto dalla t ine ma wa re e distribuito 
dalla Mìndscape, per il quale il drive 
supplementare si rende praticamen- 
te indispensabile. 

Chi possiede Amiga conosce "De™ 
fender of The Crown", della stessa 
casa, ed avrà apprezzato, giustamen- 
te, la pregevole grafica, ma non certa- 
mente la stucchevolezza del gioco. 

Con Sinbad il team di programma- 


le - Commodore Computer Club 


■ . ! ' 'I *1 1* tiANIlttlt 'Un., 




» 


MITO -514' Floppy 48 TP! 

Dopp a Faccia - Doppia Densità 
Garantito al 100% ■ Velocità di 
registrazione 5800 SPI 
500 000 byles un format! ed 

le misure 
della perfezione 

RECOVERV SERVICE - Un nostro servizio 
esclusivo Cosa e il Recovery Service? E uno 
scudo a protezione de; vostro lavoro Sa per 
un mciclente qualsiasi macchie di catte, di 
ciocco iato o impronte, i' vostro disk dovesse 
danneggiarsi, la MlCROFORUM e m grado di 
recuperare . dati senza alcun esborso da pane 
vostra. 



La mcnoFonuu manufacturing ìnc 

è interessata all amplia mente delia propria rete distributiva. 

Per qualsiasi coniatici scrivere anche io italiano 


944- A St. CJ&tre Ave Wgtf TQRQWTO. CANADA M6C 1 CI Tei (416j 656-6406- TIk G6-Z3303 MICRQFORUM TOP T^ala* (416) 656-6368 


GIOCHI 


ogni evenienza e quanti lasciate a 
guardia della nave per difenderla 
dai pirati 

Le cose, ovviamente, sono sempre 
più complicate di quanto possiamo 
immaginare: ad esempio, il numero 
di reclutati dipende anche dall'ostili- 
tà del [erri torio in cui muoviamo e si 
possono verificare perdite ingenti tra 
! marinai. 

Ci sarebbero ancora moltissime co- 
se da dire, soprattutto sulle innume- 
revoli pagine grafiche di scenografia 
che rendono il gioco sempre diverso 
ed affascinante. Crediamo, tuttavia, 
che basti affermare che si tratta di Li- 
no dei migliori giochi disponibili per 
Amiga, assolutamente imperdibile. 

'Sinbad and thè Throne of thè Fai- 
con é distribuito dalla Mindscape 
Ine. 3444 Dundee Roud. Northbrook, 
II, 60062, USA e costa 549.95 su 
due dischi. 


Flight Simulator II 

(configurazione minima: Amiga 5I2K) 

E‘ una delle più famose simulazio- 
ni già realizzata perla maggior parte 
dei computer Apple. PC IBM, Atari 
e C/64. 

Precisiamo subito che in circola- 
zione esistono due versioni di questo 
programma: una. più vecchia, adatta 
a Kickstart LI ed una. recentissima, 
per Amiga 500/2000 ed Amiga 1000 
dotato di Kickstart 1.2. Le differenze 
sono praticamente inawertibill e 
consistono essenzialmente nella mi- 
nore probabilità di mandare in 
crash" l’elaboratore {con la nuova 
versione) ed in una nuova protezione 
del dischetto originale contro le co- 
pie pirata. 

A chi non conosce il programma, 
possiamo dire che si tratta di una effi- 
cace simulazione di volo che fino a 
pochi anni fa era di competenza di c- 
la bora tori enormemente più costosi. 

Il programma tiene conto dì ben 47 
parametri tipici di un vero volo in ae- 
reo. La presentazione è in grafica tri- 
dimensionale colorata ed estrema- 
mente realistica, indiscutibilmente 
superiore a quelle viste su qualunque 



altro microcomputer (e vi assicuria- 
mo di averne viste tantissime). Evi- 
dentemente i programmatori hanno 
ben sfruttato le qualità superiori 
delFhardware Amiga, 

E' possibile pilotare uno di due ve- 
livoli: un Cessna 182, economico mo- 
no motore ad elica, ed un meno doci- 
le bireattore Gatcs Learjet, Non 
manca di certo la tradizionale opzio- 
ne per simulare combattimenti aerei. 

Il programma presenta costante- 
mente ben sette menu del tipo Ami- 
ga/! nluiiìon, selezionabili via mou- 
se. Le opzioni sono numerosissime, 
ma ricordiamo: visione del gioco 
(quattro viste dalla cabina, vista dal- 
la torre dell’aeroporto, da un al Irò ae- 
roplano). zoom ottico, scelte mete- 
reologiche (stagioni, presenza forza e 
direzione vento, pioggia, nuvole), 
mappa di volo animata. 

I principianti apprezzeranno mol- 
to il pilota automatico e l’opzione 
DEMO, nonché ÌI fatto che il tasto 
HELP può in ogni istante istruire su 
un comando qualunque. Sono inol- 
tre presenti su dischetto alcune rotte 
dimostrative che permettono di vede- 
re in azione il programma (consiglia- 
mo quell a per visionare la Statua del- 
la Libertà), Inoltre è possibile salvare 
e ricaricare in ogni momento le situa- 
zioni di volo personali. 

Mancano aH'appello, purtroppo, i 
dati per alterrare sulla Piazza Ros- 
sa.,, 

A proposito del dischetto, c e da an- 
notare quella che crediamo sia forse 
l'unica pecca del programma: quan- 
do si accede al floppy, il programma 
spesso viene momentaneamente "con- 
gelato”, Cosa evitabile con una tecni- 
ca di programmazione più curata 
(diamine. Amiga lavora in multi- 
tasking!). come abbiamo visto in altri 
programmi commerciali. 

Tra le caratteristiche ' inedite” dì 
questo programma vi è la possibilità 
dì aprire più finestre contempora- 
neamente, tra cui la mappa, la visio- 
ne laterale e lo zoom. Inoltre, udite u- 
dite* il programma c predisposto per 
il collegamento con un altro Amiga, 
permettendo così, a due giocatori, di 
volare contemporaneamente, ciascu- 
no col suo elaboratore ma avendo 
anche nel proprio “mondo” Faereo 


controllato dal l'amico. 

Curatissima la strumentazione, che 
occupa quasi metà schermo, gli effet- 
ii sonori e la poderosa documenta- 
zione, Sì badi che senza tl manuale 
di 130 pagine è impossibile usare (e 
godere), se non in piccolissima parte,, 
questo sofisticatissimo programma. 
Consigliamo vivamente l’acquisto 
del prodotto originale (circa cento- 
mila lire, in Italia). 

Chiudiamo con un paragone che 
chiama in causa la versione per C 64, 
Programmi di questo genere impon- 
gono uno sfruttamento intensivo del- 
le risorse della macchina, superiori 
alle "forze" del vecchio C/64, che 
spesso reagiva ai vari comandi con ti- 
mi lentezza esasperante, Amiga inve- 
ce risponde immediatamente (anche 
troppo!) a qualunque comando* con- 
tinuando a dare effetti sonori realisti- 
ci ed una visione grafica nitida, colo- 
rala e suggestiva. Per non parlare del 
fatto che* grazie alla netta superiorità 
di memoria centrale ( RAM ) c di mas- 
sa (dischi da 800K). questa versione 
permette ben cinque differenti aree 
di gioco e 120 (centoventi) aeroporti, 
con risoluzione grafica e velocità di 
gestione (grazie, Blitrer!) tale da fare 
deprimere fino al suicidio t possesso- 
ri dei vecchi elaboratori ad otto bit. 

“Flight Simulator II" è prodotto dal- 
la Sublogic Corporation. 713 Edge- 
brook Drive Champaign, 1L61820, 
USA. 


38 - Commodore Computer C!ub 










m 


MANUFACTURING INC 

TOROKTO CANADA 


QUfìD 


WSCfLfW-'C 
aTJtJ: W n::i 

I^TPl 


OUAO-MITO - 5 1/4" 96 TRI OS QD 
Floppy d±sK a quadrupla densità, disegnato per 
aumentare la capacità di registrazione sino a 760 
kb per dischetto 

Velocità ci registrazione 5600 BRI 


MEGA-MITO - S 1 ■'4" % TRI HIGH DEMSITY 
Floppy ad aita densità, disegnato per drive da 
1.2 MEG (AT e compatibili) 

Valocilà di registrazione 9650 BRI 


MICRO-MITO -3 1.2' 135 TP: OS 'OD 
Costruito per l'era der disk drive da 3 1 ! 2 ‘ 
Velocità di registrazione 6100 BPi 

le misure 


944 A St. Claire Ave. West TORCHIO, CANADA MGC ICS 
Te [4^)656-6406-11* 06-23303 MICflOFQRUM fOR 
Tsefar 1416) 656 6363 


La WCRQFQRUN MANUFACTWiNG INC. 
e interessala all 'ampliamento della propria rete distributiva. 
Per qualsiasi contatto scrivere anche in italiano 












Finalmente, viste le numerose richieste , d'ora in poi ogni pubblicazione Software Club su cassetta sarà 
disponibile anche su dischetto da richiedersi, per corrispondenza, presso la redazione. 

Software Club *11 (C/64-128) 

Software Club *12 (C/64-128) 

Software Club *13 (C/64-128) 

Software Club * 14 (C/64-128) 

Software Club #15 (C/64-128) 

Software Club *16 (C/64-128) 

1 Gialli Commodore 1-2-3 (C/64-128) 

Charlie Deus (C/64- 128) 

Ruby Rap (C/64- 128) 

La voce III (C/64-128) 

il prezzo, per ognuna delle suddette pubblicazioni è di L. 12.000 più L. 3.000 per spese dì spedizione. 

I< 

Le richieste vanno indirizzate a: 

Systems Editoriale 
Viale Famagosta, 75 
20142 MILANO 
TeL 02/8467348 

il pagamento può essere effettuato tramite assegno bancario o versamento sul c/c N. 37952207 
Non è possibile inviare materiate in contrassegno nè contro invio di vaglia tefegrafico. 

Per ogni ordine , anche se per più dischetti, le spese rimangono fissate in L 3.000 










GW-BASIC 


MS-DOS e Gw-Basic 

Versione 2 


Tra breve in edicola ìa seconda versione 
del package che tanto successo 
ha incontrato presso i nostri lettori 

di Alessandro dc i Simone 



F' inai mente è pronta, come aveva- 
mo promesso J a nuova realizzazione 
che consente di "trasformare" un 
semplice C/64 (dotato di disk drive) 
in un computer Ms-Dos Emulato^ 

I ra brevissimo tempo sarà disponi- 
bile in edicola la confezione conte- 
nente il dischetto su cui sono riporta- 
li i file che costituiscono il potente 
package operativo. 

Le novità 

La sezione MSDOS è stata comple- 
tamente rifatta e sono disponibili 
quasi nini i comandi (alcuni interni, 
altri esterni) presenti su un “vero" 
Ms-Dos compatibile. Chi se ne in- 
tende può giudicare da solo quanto i 
nuovi comandi siano interessanti: 

Break, Chdtr, Cd, Cls, Copy con. 
Copy, Date, Del, Frase, Dir, Disk- 
copy, Echo, Format, Mkdir, Patti, Pau- 
se, Prmt, Prompt, Reni, Renarne, Rm- 
dìr, Size, Sys, Time, Type, Ver, VoL 

Avete capito benìssimo: è possibile 
creare subdi recto it (fino a cinque li- 
velli ciascuna) ed c possibile la pro- 
cedura Path che consente l!ì attivare, 
in successione, tutti i comandi del ni- 
nnila io re MSDOS e perfino quelli 
creati dall’u lente! 

La sintassi è praticamente identica 
a quella “originale" Microsoft, i no- 
mi dei file sono costituiti da otto ca- 
ratteri (oltre d tre opzionali dì esteri- 


Commodore Computer Club - 4 J 






GWBASIC 



Non appena la nuovissima versio- 
ne sarà commercializzata, inizierà 
l’apposita rubrica, sulle colonne di 
questa rivista, dedicata esclusiva- 
mente agli utilizzatori del package 
in questione. 


Come procurarsi IVISDOS 2 


Oltre clic in edìcola, al prezzo di 
L. 25000, i lettori potranno procurarsi 
il package direttamente dal nostro 
servizio arretrati inviando per posta 
la cifra richiesta (+ L3000 per la spe- 
dizione semplice oppure + L.6000 
perla spedizione raccomandata) me- 
diante assegno bancario non trasferi- 
bile intestato semplicemente a: 
Systems Editoriale - Milano. 

Coloro che. in possesso della prece- 
dente versione, allegheranno la pro- 
va di acquisto presente nella vecchia 
co n le z io ne, do v ra n n o i n v i a re , linc- 
ee, una cifra inferiore, secondo qua ir- 
to specificato nel talloncino stesso. 


sione) ed è attivabile la procedura 
Autoexec. 

Perfino i messaggi dì errore sono gli 
stessi ed identica risulta la loro inter- 
pretazione da parte del C/64. 

Particolare cura è stata prestata per 
l'emulazione dei tasti funzione più 
importanti (FI, F2, F3, F4). 

Chi ha lavoralo qualche volta con il 
sistema operativo Ms-Dos può facil- 
mente immaginare la validità del 
software proposto i cui autori sono 
Gianca rio Mariani e Fabio Sorgalo, 
ben noti ai nostri lettori che apprez- 
zano gli articoli sul Linguaggio 
Macchina. 

Yjà versione 2 Gw- Basic 

La nuova versione del Basic è anco- 
ra più vicina a quella originale Gw- 
Basic. 


Le modifiche più importanti sono 
state effettuate non solo per le nuove 
esigenze sulla gestione dei nomi ri- 
de n ricantavo! ta, al "vero” Ms-Dos) e 
sulla possibilità di sfruttare total- 
mente le subdirectory; particolare at- 
tenzione, infatti, è stata anche presta- 
ta affinché la sintassi dei file relativi 
risultasse identica, ed alcune istru- 
zioni grafiche divenissero totalmente 
compatibili con Pedono ne originale. 

E‘ possibile, inoltre, registrare la 
pagina grafica e richiamarne altre 
memorizzate in precedenza. 

La gestione dell’alta risoluzione, i- 
nuttle dirlo, è quella tipica del C/64; 
320x200 ed i comandi del colore sono 
rigorosamente identici a quelli di- 
sponibili su macchine professionali. 

La velocità è certamente dignitosa e 


non farà rimpiangere l’utilizzo del 
C/64 in modo "normale 

Non dimentichiamo, infatti, che 
tutte le istruzioni normalmente di- 
sponibili sul C/64 rimangono attive 
anche con l’Emulatore Gw-Basic in- 
serito nel computer. 

Le istruzioni disponibili nella ver- 
sione 2 del Gw- Basic sono le se- 
guenti; 

Appenda Auto, Beep, Bload, Bsave, 
Buffer, Cali, Oidir (patii), Chele, 
Clear, Close, Cls, Color, C srlin, Dole- 
te, Dirai!, Disk, Draw, Edit, f of, El, 
Else, Er, Erdev, ErdevS, Fìeld, Kìles, 
Kix, Funci, Furici, Cet#, Gwbasic, 
HexS, InputS, Instr, lnkey$, &H, Key T 
Kcyofh Keyon, JKill, Lcopy, Line, li- 
neìnput, Eineinput#, Elisi, Locate, 
Load, Lpritii, Lset, Merge, Name, 
Oct$, On (error, goto), Open, Output, 

Paint, Play, Point, Prese!, Fritti, Pset, 
Puf, Quit, Randomize, Renum, Resto- 
re (In), Résumé (next), RgetS, Rset, 
Reset, Résumé, Run **name n , Save, 
Scrcen, Sound, SpaceS, StringS, 
Swap, (ape, Troff, Tron, Usìng, Ver- 
simi, Xor, VVcnd, Whìlc, Write, 
Write# 


42 - Commodore Computer Club 






ENCICLOPEDIA DI ROUTINE 


Anche 

Tocchio 

vuole 

la sua parte 


Qualche routine per migliorare 
la visualizzazione di messaggi 
sui vostri schermì 


A cura di Alessandro de Si mone 


18800 Titolatrice 

(Qualsiasi Commodore) 

Avete mai avuto modo dì osservare, in un film, la di- 
sposizione dei nomi dei protagonisti, soprattutto nei ti- 
toli di coda? 

Molto spesso i nomi ed 3 cognomi degli attori sono di- 
sposti avendo come riferimento una colonna centrale; 
da questa “partono” i cognomi ed a questa “terminano** 
i nomi stessi, 

Non e una configurazione a bandiera (che ha, come 
riferimento, il margine sinistro o destro) nò si può defi- 
nire “centrata** dal momento che il nome ed il cognome 
dovrebbero distare un e guai numero dì spazi dai 
bordi estremi. 

E\ invece, una configurazione di testo che possiamo 
definire a “doppia bandiera"; destra per 3 nomi c sini- 
stra per i cognomi rispetto, ovviamente, ad una certa 
colonna presa come riferimento. 

La routine che proponiamo si occupa proprio di as- 
solvere questo compito: verifica clic alfìntcrno della 
stringa XI $ (lunga al massimo 39 caratteri) sia effettiva- 
mente presente u n carattere di spazio c. quindi, spezza 
in due parti la stringa stessa; in seguito, dopo aver ag- 
giunto un congruo numero di spazi alla sinistra del pri- 
mo troncone (X8S) ed alla destra dei secondo (X9$). ri- 
torna al programma principale. 

ET sufficiente stampare le due stringhe di seguito per 
vederle visualizzate incolonnate avendo come riferi- 
mento il numero XI di colonna impostata prima di 
chiamare la routine. 

Il demo, incorporato nei programma pubblicato, vi- 
sualizza più volte i nomi di sei attori memorizzati per 
mezzo di Data, Si noti come la routine sia versatile c 
consenta, con minime modifiche, di ottenere anche in- 
colonna menti in diagonale. 



90 REM DEMO I NCOLDNN AMENTO NOMI 
I 

91 : 


100 POR X1=0 TQ 35 5TEP 7 : 

110 POR 1 = 1 IO 6 ; READ Xl$ 

130 GOSUB 10800- PRINTX0SXe$X9S 

130 NEXTI : FRINÌ : RESTORE : NEXTX1 

131 : 

133 POR X1=0 TO 38 STEP 7 : 

133 POR 1 = 1 TO G : READ X1S:X1=X1 
+ 1 


134 GOSUB 18800 : PR INTX0$XB$X9$ 

135 NEXTI ; PRIMI : RESTORE :NEXTX1 

136 : 


137 FDR Xl-10 TO 40 STEP 30: 

1 30 POR 1=1 IO 6: READ Xlffi:Xl-Xl 
-1 


139 

140 
150 
800 
810 
380 
830 
840 
850 
260 

3998 

19000 


eOSUB 18800: FRI NTX0$X8$X3$ 
NEXTI : PRIMI: RESTORE :NEXTX1 

Hi 

DATA FIARILYN NONROE 
DATA MALCOM flC DOWELL 
DATA GIANFRANCO D’ANGELO 
DATA ELEONORA GIORGI 
DATA PAOLO UILLAGGIO 
DATA FRANCESCO SALDI 


END 

xe$=” xsffi 


ri u 


: X05 


» n 


: IF Xl< 


10805 


0 OR X 1 > 39 THEM X0$=”ERR" : R 
ETURN 

FOR X9-1 TD 39- X3S-X95 eCHRS 


C 32 ) : NEXT : X1$“LEFT$CX1$+X9$ 
,39) 


60 - Commodore Computer Club 


ENCICLOPEDIA DI ROUTINE 


18810 X3-0 : FOR X8-1 TG 39: IF MID$ 
CX1$ , XB , 1 y =CHRSC32) THEN X3 
“X8 : X8*=33 

1BBB0 X8$=XS$+MID$CX1$ , X8 , 1) : NEXT 

1BB30 XB$“RIGHT$CX9I+X8$,X1+11 

1BB40 X3$ = LEFT$ Crt I □$ C X 1$ , X3 , 33-X9 
) , 3B-LENCX8$1 ) 

1BBE0 RETURN 

1BB85 REM X1=0ISTAN2A DELLO SPAZI 
0 DAL BORDO 

1BB8E REM X1S=C INPUT) NOME CGNTEN 
ENTE UNO SPAZIO 

1BBB7 REM XB$= COUIPUT3 NOFtE BINI 
STRO 

1BBBB REO X9$- i OUTPUT) NOME DESI 
RO 

18B93 REO INCOLONNAMENTO NOMI CON 
SPAZIO 


18900 Messaggi mobili 

(Qualsiasi Commodore) 

Con questa divertente routine sarà possibile visualiz- 
zare, carattere per carattere, un qualsiasi messaggio ad 
una velocità dipendente dal valore X2 ed a partire dal 
rigo video indicato da XI. 

Naturalmente la visualizzazione avverrà in un modo 
piuttosto particolare ed. esatta men te Jn accordo al con- 
tenuto della stringa X3S che può ospitare, grazie ad un 
particolare Input controllato, solo i comandi relativi ai 
quattro movimenti del cursore. 

Il Demo inserito nella stessa routine chiarirà l'uso 
che si può (are de! sotto prò grani ma meglio di un fiume 

dì parole: quando appare il messaggio "Premi i tasti 
cursore.,,’ divertitevi a premere, nella successione che 
preferite, la combinazione dei tasti cursore, con c senza 
shift 

Non appena avrete battuto il tasto Return, oppure a- 
vrete raggiunto la lunghezza del nome contenuto in 
XIS, vedrete che il messaggio verrà visualizzato, carat- 
tere per carattere, secondo la successione dei tasti 
premuti 

100 Xl$“ "COMMODORE COMPUTER CLU 
B ” : REM NOME 

110 X1=10:REM N.RIGD INIZIO 
115 Xa=100:REh UELQC I TfV UISUA 
LI22A2I0NE 

150 FRI NT " PREfl I 1 TASTI CURSORE 
PER ” LEN CX1S1 ”UQLTE ” 

130 GOSUB 1QS00 
9938 : 

3993 END 


18900 X0§^ ” I F XI > 85 OR X1<0 THE 
N X09 =JS ERR” : RETURN 
1B305 X3S- " 71 : X3=0 : X4=LEN ( XIS ) 
10910 GEI XESrlE X53-CHRSC13) THE 
N 18940 

19980 IF X2$< > DOU1N3 ?> AMD X2SO’ 1 
CUPI” AND XS$<> "CRIGHT1” AN 
D X2$<> ”ELEFT3" THEN 18910 
18330 X3ffi=X3S+XHS: X3=X3+1 : IF X3<X 
4 THEN 18910 

18940 PR INTCHRSC 147) : POR X3-1 TQ 
XI :PRINT;NEXI 

18350 FDR XI “1 IO X4;F0R X3»l IO 
X5 : NEXTX3 

1B3B0 PRINTMIDSCX3S , XI *1 ) Il I DS C X 1 9 
,X1, 1); : NEXTX1 ; RETURN 
18333 REM U5UALIZ2A SALTELLANDO 


19000 Attesa ipnotica 

(Qualsiasi Commodore) 

Questa routine, scritta per C/64, può essere facilmen- 
te adattata al C/16 ed al Pìus/4 modificando le righe 
19000 e 19010 come indicato, rispettivamente* nelle 
Rem di righe 19001 e 1901.1. 

Non fa altro che visualizzare casualmente un gruppo 
di caratteri, tutti eguali, disposti però con una certa re- 
golarità e, in certi casi, con piacevole simmetria. 

À seconda del valore attribuito alla variabile XI, la vi- 
sualizzazione continua all’infinito (XI =0) finché non 
si preme un tasto; altrimenti continua per il numero di 
volte stabilito con XI stessa, a meno che non si prema 
un tasto qualsiasi prima che giunga al termine del 
conteggio. 

Può essere utile per attrarre Fattenzìone dell'utilizza- 
tore s oppure per,, ipnotizzarlo! 


30 REn DE HO ATTESA IPNOTICA 
91 ; 

100 X1-0:REM CICLO INFINITO 

105 P.RINTCHRSC1473 ,f PER INTERROfI 
PERE L’EFFETTO CHE ORA UEDR 
AI, PREMI UN TASTO” 

106 GEI A$:IF A$“ ” ” THEN 10E 
110 GOSUB 19000 

150 PR INTCHRSC 147) : INPUT ”OUANT 
E UOLTE ” ; XI 
130 GOSUB 19000 
9398 : 

9999 END 


Commodore Computer Club - 61 



ENCICLOPEDIA DI ROUTINE 


19600 FRI NTCHRSì C 1 47 ) : X4“1023 : X2“I 
NT( RNDC 0}*50;t : IF X2<20 THEN 
13000 

19001 REtl : C/16: PR INTCHRSC 147) ; 
X4=3071 : X2=INT CRNOC0)*50) : I 
FX2< 20THEN 19000 

13005 X5=RND( 0)*25S : IF X5=32 OR X 
5=1B0 THEN X5=33 

13010 X4=X4+X2:IF X4<2023 THEN PO 
KE X4 , X5 : GDTD 13010 

13011 REFI : C/16: X4=X4+X2 : I FX4<4 
070THENPDKEX4 , X5 : GCTD19010 

13015 GET X 1 S : I F Xl$<>”” THEN RET 
URN 

13020 IF XI > 0 THEN X3~X3+1 : IF X3< 
XI THEN 19000 

19040 IF Xl-0 THEN 13000 

13050 RETURN 

19039 REN ATTESA IPNOTICA 


19100 Somma di ore 
(Qualsiasi Commodore) 

Vi è mai capitato di dover sommare, tra loro, due ora- 
ri? 11 problema non c molto semplice dal momento che 
la suddivisione del tempo non è in notazione decimale, 
ma sessagesimale (per ore e minuti), per non parlare 
del giorno, suddiviso in 24 ore. 

Con la routine di queste pagine sarà possìbile asse- 
gnare alla variabile Xi,$ il primo dei due orari ed alla 
variabile X2$ il secondo; il formato è quello ben noto 
della variabile TU, formata da sci caratteri che, a cop- 
pia di due, rappresentano le ore, i minuti ed 1 
secondi. 

La routine contiene, al suo interno, alcuni controlli 
che consentono di individuare errori dì formato ed in- 
congruenza di orari come, ad esempio: 256399, 

II demo effettua, c visualizza, la somma tra 124535 e 
1 15456; subito dopo chiederà altre somme da ef- 
fettuare. 

Si noti che se la somma dei due orari {assegnata alla 

variabile X3$) supera le 24 ore, la variabile X0 sarà po- 
sta ad uno; in caso contrario varrà zero. 

Si tenga presente, inoltre, che, al ritorno dalla routine, 
i primi tre elementi del vettore XS(I) contengono, ri- 
spettivamente, le ore. i minuti ed i secondi elaborati. 

90 RED SOMMA DI ORE 

91 : 

100 Xl$-”124535” 

110 XE3) = ” 1 1S45S ” 

115 GDSUB 19100: PR I NIX 1 $ ” + ” 

130 PR I NTXBS ” “ ” : PR I NTX3$ : PR I NT " 
LA UAR I AB ILE X0 UALE”X0 

62 - Commodore Computer Club 


13 0 INPUT "ORARIO 1 CES:1£34B53 
” ; Xì£ 

140 INPUT "ORARIO E CES: 193485) 
” ; XE$ 

150 GG3UB 19100 

160 IF X0$“ ” ” THEN FRI NT "SOMMA 
□ RE: ” : FRI NTX1S ” + " : PRINTX33; 
,J ” ” : PRINTX33 

170 IF X0> 0 THEN FRINT”OLTRE AD 
UN INTERO GIORNO” 

100 GOTO 130 
939B : 

9839 END 

19100 X0$-”” : X0=0: IF LEN(X1S)<>6 
DR LEWC XB3 ) < > 6 THEN X03=”ER 
R” : RETURN 

19105 POR Xl-1 IO B STEP 8 

13110 X1CX1)=UALCMIDSCX1$, XI ,23 1 : 
XBC XI ) -UAL (MI 096X65 , XI , 6) 1 : 
NEXT 

191B0 IF XI C X 3 > 93 OR X2C13>23 OR 
X1C33>59 OR XE ( 3 3 > 59 THEN X 
0S“ "ERR ” : RETURN 

19140 IF X 1 C 5 ) > 59 OR XE65)>59 THE 
N X0$"”ERR ” : RETURN 

19150 X 6 3 } “XI C 5 3 + XE 65 } : X C B ) -X 1 6 3 ) 
+XEC3) : XC 1}=X1C1)+XB( 1) 

13150 IF X C 3 ) > 53 THEN X C 3 ) «XC 3) -6 
0: XCE^-XCE)+l 

19170 IF X C E ) > 53 THEN XCBl-XCBO-G 
0:XC13-XC15+1 

19179 IF X C 1 )> B3 THEN XC11“XC1)«E 
4:X0=1 

191B0 FOR X9= 1 TD 3: X3S-5TRS C X C X9 
) ) 

131B9 X9CX9)=R1GHT$C ”00 ”+R I GHTffi t X 
3$ s LEN C X3S ) - 1 ) ,B) ; NEXT 

13190 X3$ m ” ” : FOR Xl-1 IO 3;X3$-X3 
S+XSCXl ') : NEXT: RETURN 

19199 REM SOMMA DI DUE ORARI CX1 
$+XB$=X3$ 3 





ENCICLOPEDIA DI ROUTINE 


Elenco delie ultime routine pubblicate 


6-3 i K)2 noni 3 S 60t> inco ni tei Oto re (45) 

63903 rem 18500 strine wrticr (451 

65904 rem 1 84Ó0 password (45} 

65905 rem 18300 smilzi phty (45) 

65906 rem 18200 fusi oràri (44) 

63907 rem 18100 paroliere (44) 

63908 rem 18000 random program m£b; (44) 

63909 rem 17900 gestione menu (44) 

63910 rem 17800 legge file (43) 

639 M rem 17700 memo-messaggi (43) 

63912 rem 17600 auriga menu (43) 

63913 rem 17500 mini text-editor (42) 

63914 rem 17400 h/topy low-res (42) 

63915 rem 17300 grand, analogiche (41) 

63916 rem 17200 interp A$ ,(4J) 

63917 rem 17100 equivalente (40) 

63918 rem 17000 percentuali (40) 

63919 rem 16900 deck & doke (39) 

63920 rem 16800 aprite scanner (39) 

63921 rem 1 6 70Q movimento sprite (39) 

63922 rem 16600 accensione sp ri te (39) 

63923 rem 16500 drurn per c/64 (38) 

63924 rem 16400 draw low/rxs (38) 

63925 rem 36300 prini v/con l (38) 

63926 rem 16200 plot low-res (37) 

63927 rem 16100 integrali (37) 

63928 rem 16000 equaz. mista (37) 

63929 rem 15900 cquaz. terzo gr. (37) 

63930 rem 15800 derivata di fiinz. (37) ■ 


63931 rent 15700 scritte rotanti (37) 

6393 2 re m 1 5600 co n ve rs , eoord in. ( 3 6} 

63933 rem 15500 logar base quitta. (36) 

63934 rem J 5400 convèrsi One ha si ( 3 6.) 

63935 reni 15300 se m pii f. frazioni (36) 

63936 rem 15200 di vis. con N dedm ,(36) 

63937 rem 50100 directory (35) 

63938 rem 15100 lampeggio righe (35) 

63939 rem 1 5000 frammenta schermo (35) 

63940 rem 14900 dolete wiridow (35) 

6394 ì rem 14800 cambia siringhe (34) 

63942 rem 14700 slitta stringhe (34) 

63943 rem 14600 ruota stringhe (34) 

63944 rem 10500 input programmali, (34) 

63945 rem 14500 serpi] solo cesto (33) 

63946 rem 14400 spille multiuso (33) 

63947 rem 14100 zoom esatteci male (33) 

63948 rem 14200 video orologio (33) 

63949 rem 11100 funzioni inverse (32) 

63950 rem 3 3200 centra messaggi (32) 

63951 rem 14100 finestre di testo (32) 

63952 rem 14000 gestione nome disk (32) 

63953 rem 13900 load/save pg. video (31) 

63954 rem 13800 scritte in ebem (3!) 

63955 rem 13700 bit imago mps/803 (31) 

63956 reni 13600 or esclusivo (31) 

63957 reni 13500 comandi extra prg(31) 
6-3958 rem [3400 linee low-res. (31) 

63959 rem 13300 elabora siringhe (31) 


63960 rem 132(X) centratura frase (32) 

63961 rem 13100 menu con joy (30) 

63962 rem 13000 menu con cursore (30) 

63963 rem 12900 frase lampeggiante (29) 

63964 re in 12800 bordo technicolor (29) 

63965 rem 12700 fili memoria ram (29) 

63966 reni 12600 text copy mps 803 (29) 

63967 rem 12500 colore pag, testo (29} 

63968 rem 12400 print using (31) 

63968 rem 12400 print using (29) 

63969 rem 12300 mx.d. E M.C.M. (29) 

63970 rem 50500 visualizza file (28) 

63971 rem 50400 read file relativi (28) 

63972 rem 50300 write file retar (28) 

63973 rem 50200 crea file relativi (28) 

63974 rem 50000 legge blocks free (28) 

63975 rem 12200 numeri con a fui (28) 

63976 rem 12100 protendile S/W (28) 

63977 rem 12000 koala (27) 

63978 rem 1 1900 di auge pag. vìdeo (27) 

63979 rem E 1800 salva ram (27) 

63980 rem 1 1700 calcolatrice (27) 

63981 rem U 600 scoili posiz.ril labe (27) 

63982 rem 1 1500 cardi i-res (27) 

63983 rem 11400 istogrammi (27) 

63984 rem 501 (M) esame directory (26) 

63985 rem 11300 ftinz.inv.iperbol- (26) 

63986 rem 1 1200 Ibnz.inv.trigoiionJ (26) 

63987 rem 1 1 100 funzioni inverse (26) 


A SOLE 285.000 LIRE, IVA COMPRESA 

IL DISK DRIVE PER IL TUO COMMODORE 64/128 * 

* DRIVE 1571 COMPATIBILE A SOLE 395.000 LIRE, IVA COMPRESA 


1} COMPATIBILE AL 100%. stesso DOS (Dtsk Operaling System] del Commodore 
2) Costruzione SLIM LINE con alimentatore esterno compreso nel prezzo 
3} DOPPIO connettore seriale per collegare un altro Drive 



GRATIS! 


ad ogni acquirente, la famosa 

^ EXPRESS SYSTEM della MASTERTHONIC A 

(valore L 35 000) la miglior cartuccia per velocizzare 
fino a 5 volte il caricamento dei programmi da disco. 

La cartuccia si inserisce nella porta di espansione dei 64/128 
e NON la decadere ta garanzia del tuo computer 


e/o una stampante 

4) Robusto mobile m metallo schermalo antìdisturbo 

5) GARANZIA totale ri 2 mesi, comprensiva di ricambi 
e mano d'opera) 

6) Dettaglialo libretto dISTRUZIONi in rialiano con 
molti programmi in BASIC ed esempi d'uso 

7) DEVIATORE esterno per cambiare m 

via Hardware il numero della periferica 
DISCHETTO omaggio con programmi e 
copiatori TURBO per trasferire su disco i 
programmi su cassetta. 


8 





Rapide spedizioni in tutta ITALIA, con pagamento contrassegno al postino i Lire 15.000 quate contributo spese di spedizione 
Nessun addebito di spese a chi allega all'ordine un assegno non tra steri bile o un vaglia postale intestati alla 

CIRCE Electronics, Srl - Via Primo Maggio, 26 - Iona industriate - 37012 ÈUSSOLENGO (YR) ■ Tei (045} 71.51.043 

Per ricevere n catalogo hardware, inviare L iGQQ in francobolli 





ENCICLOPEDIA DI ROUTINE 


Come realizzare l’enciclopedia e utilizzarla nei propri listati. 


A 


fll lettori che hanno acquistato per la prima volta questo numero di Commodore Computer Club, illustriamo qui di set-gito, in 
breve, i vantaggi derivanti dalla raccolta proposta. Questa, a pensarci bene, è (a versione 'superiore" delia rubrica “1 RIGA' c 
potrebbe anche denominarsi,,, "Una schermata"! 

Oltre che utili per costituire un’enciclopedia, i brevissimi sottoprogrammi pubblicati su ogni numero, sono anche validissimi 
strumenti di studio per coloro che desiderano approfondire le proprie conoscenze del Basic, esaminando, senza fatica, particolari 
routine o insolite tecniche di programmazione. 

• Dato che può esser “chiamata" più di una volta nel corso di un programma, nessuna routine contiene istruzioni del tipo DATA 
oppure DIM, allo scopo di non creare confusione col listato principale 

& Nessuna routine può far riferimento ad altre routine de II ‘enciclopedia. 

• Nessuna routine può contenere variabili “banali" (A, A$, eccetera), ma solo variabili poco usate (X1S, X8, Y0%. eccetera), 

• Ogni routine deve apparire, per Intero* sullo schermo del computer c consentire, proprio per questo motivo, di essere esaminata 
comodamente. 

• Ogni routine deve esser numerata secondo uno standard che ha la particolarità di esser ricordato facilmente; 


Righe 

XX Y00 Prima riga del sottoprogramma 

XXVB9 Ultima riga utile del sottoprogramma 

XXY90 REM Prima riga di spiegazioni 

XXY99 REM Nome delta subroutine 

in cui XX sono due valori variabili da JO a 63; Y è un carattere numerico compreso tra rie 9. 

Qualsiasi subroutine, in altre parole, inizia con un numero, di cinque caratteri, che termina sempre con “00’ \ La stessa subroutine, 
d’altra parte, ha l’ultima riga numerata con "99". Digitando, ad esempio; LIST 1080010899 
si avrà la certezza di veder apparire sullo schermo, per intero* la routine il cui nome si trova nella riga 10899 

Prima di accedere alla routine, è necessario assegnare, alle variabili indicate con REM da riga XXY89 a XX Y98, particolari valori 
per il suo corretto funzionamento. Al “ritorno" una o più variabili conterranno il risultato delUelaborazione. 

In questo modo* per esser più chiari, è possibile simulare alcuni comandi di versioni Basic avanzate oppure, addirittura, creare 
nuove e inedite istruzioni. Ad esempio, il comando: SOUND 1,800,500 

che, nel 016, riproduce un suono di tonalità SfJC) tramite la voce 1 per la durata 500, potrebbe venir riprodotta, in un'ipotetica 
subroutine per il Commodore 64, con: X1™UX2=800;X3=500;GOSUB12400 
nell'ipotesi, ovviamente, che la routine in oggetto sia allocata da nga 12400 a 12499, 

I listati pubblicati “girano" su ogni computer* salvo dove indicato diversamente, 

E ovvio che nel caso de) Vio20, (che, come è noto, ha uno schermo di soli 506 caratteri), le subroutine "universali" funzionano 
corretta mente , ma non possono apparire per intero in una sola schermata. 

Per quanto riguarda la digitazione, si tenga presente che sulla rivista, per motivi di chiarezza, i comandi e le istruzioni Basic sono 
separati tra broda spazi bianchi. Nel digitare 3c linee di programma, pertanto, è opportuno ignorarli altrimenti si rischia di non restare 
in una sola schermata, Se, per esempio, leggete. 

12100 Xl=34: X2 =* SQRfX3) + LQG(XI) 
digitate nel modo seguente: 

12100 Xl“34;X2=SOR(X3)+L.OGfXl} 

senza, cine, alcun carattere di separazione tra comandi ed istruzioni 


Contenuto 


( olla Imi razione dei lettori 

La collaborazione dei lettori è gradita, purché si prov- 
veda a inviare almeno tre sottopiog ramni per volta, su 
nastro, disco oppure output di stampante. 1 listati di 
routine che non rispettano lo standard adottato non 
potranno esser presi in considerazione. 

Tutti i lavori pubblicati verranno compensati con pro- 
dotti della Systems Editoriale (cassette di programmi, 
libri, abbonamenti, copie arretrate, eccetera). 






64 - Commodore Computer Club 





ANTEPRIMA 


Tanti giochi 
e due utility 


odiamo in dettaglio i titoli del- 
lultimo numero di “Software Club” 
perla parte dedicata ai possessori di 
C/64-128, 


Cover 

Come tutti i numeri di Software 
Club, il primo programma è una sim- 
patica presentazione del contenuto 
della cassetta. 


Over thè top 

Il tema centrale del film “Over thè 
top“ riguarda i campionati nazionali 
dì “Àrm-wrestling", braccio di ferro. 

In questo videogame sarai tu che, 
joystick alla mano, dovrai sfidare i 
campioni di questo fantastico sport. 

Prima del l’inizio del match findi- 
catore nella parte alta dello schermo 
è fermo nella posizione centrale, che 
equivale alla condizione di parità 
durante il gioco, 

Premendo PIRE inizia il match, 

Muovendo velocemente lo stick del 
joy alternativamente a destra e a sini- 
stra si contrasta lo sforzo dell'avver- 
sario, che tende a muovere l'indicato- 
re verso destra. 

Per 11 giocatore il match si divide in 
due fasi possibili: 

1/ 1 ire non premuto - In questo caso 
è più facile contrastare l’attacco del- 


li numero 16 di 
Software club 
contiene tanti giochi 
divertenti; ma anche 
una Ram-Disk 
per C/64-128 


l'avversario, ma f indicatore non può 
essere spinto a sinistra oltre il punto 
centrale. Questa è la fase di DI- 
FESA. 

2J Fire premuto - In questo modo l'at- 
tacco dell'avversario è più potente, 
ma il giocatore può vincere muoven- 
do velocemente lo stick, tanto da 
spingere l'indicatore completamente 
a sinistra. Questa è la fase di 
ATTACCO. 

Ad ogni vittoria del giocatore l’av- 


versarlo diventa sempre più forte, sia 
in fase di attacco che in fase di 
difesa. 

Ogni passaggio di livello è identifi- 
cato da un particolare commento che 
compare in alto a sinistra nella 
schermata intermedia. 

I livelli sono più di dieci, ma oltre il 
nono la vittoria risulta praticamente 
impossibile per i limiti meccanici 
del joystick. 



Commodore Computer Club - 65 








ANTEPRIMA 


Croll sKip 

Lo scopo del gioco è quello di colpi- 
re le 30 “E" rotanti prima di colpire la 
stella contrassegnata con "FINAL” 
al centro della grotta, 

fi nemico, che insegue F astronave, 
va preferibilmente evitato piuttosto 
che colpito, poiché quando viene col- 
pito Ì1 carico dell astronave dimi- 
nuì sce^ 

Il carico è costituito dal numero di 
unità di energia colpite (le "E’ rotan- 
ti) e viene aggiunto al punteggio ogni 
volta che Fastronave fonia alla base 
("Energy Home"). 

La potenza dei nemici, che influen- 
za la frequenza con cui appaiono le 
pietre-ostacolo all'interno della grot- 
ta, aumenta a mano a mano che si 
raccolgono energie. 

Ad ogni ritorno alla base la potenza 
dei nemici viene decre mentala. 

I livelli sono tre e differiscono per la 
distribuzione dei bersagli e la forma 
della grotta che rendono più ardua la 
raccolta delle unità di energia. 

II passaggio di livello avviene 
quando, dopo aver raccolto tutte ìc u- 
nità dì energìa, si colpisce la stella 
posizionata al centro della grotta. 

La parte grafica dei due giochi, 
molto ben curata, non ha nulla da in- 
vidiare ad altri videogame con- 
simili. 



Deltaplani Blob 


Il deltaplano* uno dei velivoli più 
affascinanti, ispira questo gioco 
divertente. 

Con ìt Joy in porta 2 controlli il del- 
taplano dal quale lancerai bombe 
con lo scopo di colpire tutte le ban- 
dierine presentì nel paesaggio. 

Attenzione! Sarà possibile colpire 
le bandierine solo avendo cura eh e la 
bomba esploda nel momento de ila 
collisione con la bandierina stessa. 

Se proprio non riesca a colpire le 
bandierine, beh, almeno goditi il 
paesaggio... 


Ed ecco un altro gioco molto ben 
curato che poco ha da invidiare alla 
concorrenza d f oltre oceano. 

Una simpatica ape golosa di... cilie- 
ge si muove in un labirinto a caccia 
dei frutti preferiti. 

Ma in agguato ci sono i guardiani 
che cercheranno in tutti ì modi di 
fermarla. 

Rispondendo tL Y" alla domanda 
"‘Do you want to make your selec- 
tion?” sarà possibile selezionare va- 
rie opzioni: 



Speed (1-4): velocità del gioco 
N, of enemies (2-4): numero dei 
nemici 

N. of cherries (S-40): numero delle 
ciliege 

Decisione e destrezza occorrono 
per questo gioco che contiene tantis- 
simi schermi differenti. 


Ram-Disk by 4WD-Soft 

Ed eccoci arrivati al "clou" della 
cassetta; la Ram-Disk è i! risultato di 
un lungo ed attento lavoro di pro- 
grammazione che ha premiato gli 
autori con una notevole soddisfa- 
zione. 

Tutti coloro che utilizzano compu- 
ter evoluti, come IBM, Alari* Amiga e 
così via* hanno certamente utilizzalo 
una Ram-Disk, 


66 - Commodore Computer Club 





ANTEPRIMA 


La quasi totalità di utilizzatori di 
C/64-128, invece ignora quasi del lut- 
to resistenza di questo potente stru- 
mento di lavoro. 

Che cos e una Ram-Dìsk? 

Si tratta di un'area di memoria 
RAM che viene protetta da scrittura e 
che viene usata a tutti gli effetti come 
se fosse una periferica (virtualmente 
un disk-drive). 

I vantaggi dì questa partizione di 
memoria sono numerosi: in primo 
luogo, durante il lavoro di program- 
mazione. non sarà necessario salvare 
continuamente su disco o nastro tut- 
te le varie versioni del programma 
(con notevole perdita di tempo): sarà 
possibile salvarle temporaneamente 
in memoria per poi salvare a fine la- 
voro un'unica versione su disco o 
nastro. 

In secondo luogo, il programma è 
protetto da qualsiasi cancellazione 
accidentale, tranne il caricamento di 
un programma troppo lungo (supe- 
riore ai 1 IO blocchi), 

SÌ a Ru n/slop e Restore, che il Reset, 
non alterano il funzionamento del 
programma per cui il comando “R” 
(freccia a sinistra + R) è sempre pre- 
sente e permette di passare dal Basic 
al modo Ram~Disk, 

In terzo luogo funziona da “espan- 
sione”; infatti, la memoria per il Ba- 
sic è limitala a $7 FEO (circa 30 KB) e 
lo spazio per la Ram-Disk è dì circa 
18 KB. In pratica con questa utility si 
hanno 30+18 KB = 48 KByte (non 
male!)... 

La Ram-Disk viene gestita con nove 
comandi da visualizzare con il co- 
mando HELP: 

* L ‘nome prg”: carica da RAM il 
programma, 

* S “nome prg”: salva il programma 
nella zona RAM. 

* V "nome prg”: esegue la verifica 
del programma, 

* D: elenca i programmi presenti in- 
dicandone anche l'occupazione in 
byte. 

* F: formatta l'area di memoria can- 
cellando gli eventuali programmi 
presentì. 


* R “nome prg": rinomina il file 
specificato. 

* E “nome prg”: cancella il program- 
ma in questionc. 

* H: elenca i comandi. 

* Q: ritorna al Basic. 

Esempi d oso 

Supponiamo che abbiate registrato 
su disco, o nastro, un programma de- 
nominato Pacchio ' e che vogliate 
modificarlo. 

Per prima cosa sarà opportuno ca- 
ricare e lanciare il programma Ram- 
Disk; successivamente sarà possibile 
caricare il programma "Pacchio”, da 
disco o nastro, quindi digitare il co- 
mando di rana me (R) c, una volta in 
ambiente Ram-Disk, dare il coman- 
do S “Pacchio”. 

A questo punto il programma “Pac- 
chio” è in memoria (sia nell'area Ba- 
sic sìa nell'area Ram-Disk). 

Tramite il comando Q sarà possibi- 
le tornare al Basic e modificare il li- 
stato originale e, quando lo si ritiene 
opportuno, salvarlo sotto Ram-Dìsk 
anziché su periferica. 

In questo modo si risparmierà una 
notevole quantità di tempo. 


Una volta terminata la fase di mo- 
difica o miglioramento del program- 
ma sarà possibile salvarlo definitiva- 
mente su supporto magnetico. 

Come il lettore certamente saprà, il 
numero dei salvataggi (e caricamen- 
ti) di un programma di media lun- 
ghezza, prima della sua versione de- 
finitiva, è piuttosto elevato (noia a 
parte); tramite l'utility proposta sarà 
quindi possibile noti solo evitare i 
“tempi morti” ma anche un'usura ec- 
cessiva della periferica. 

Marker 

La seconda utility di questo nume- 
ro ha lo scopo di facilitare la stesura e 
il controllo di programmi molto 
lunghi. 

Una volta attivata, verrà visualizza- 
ta accanto al cursore una striscia, 
lunga 40 caratteri, di colore bianco, 
interamente formata da sprìte. 

Lo scopo dì questa striscia è quello 
di evidenziare la riga corrente in cui 
sì trova il cursore. 

Per attivare o disattivare l'utility è 
sufficiente impartire il comando SYS 
49253 



Commodore Computer Club - 67 






li ani 


Nelle vicinanze del punto in cui 
siete entrati vedete, sul muro, un’anti- 


Eccoci ora arrivati alla “zona riser- 
vata ' al 016/ Plus/4 


Quickfish 

Una piattaforma petrolifera mette 
in perìcolo la vita tranquilla dì un 
simpatico pesciolino. 

Il vostro compito è quello di aiutar- 
io a mettere in salvo le sue uova pri- 
ma che sì verifichi un disastro ecolo- 
gico causato dalla rottura delle tuba- 
zioni deirimpianto. 

L’unica possibilità dì salvezza per 
le uova è una cozza gigante che trove- 
rete superando una montagna som- 
mersa: fate però attenzione a non ri- 
manervi intrappolati. 

Prestate attenzione nel superare la 
montagna: in cima ad essa passano 
alcune bisce marine voracissime! 

Per prendere, e depositare, le uova 
premete il pulsante di fuoco del joy- 
stick, o la barra spaziatrice. 

Per muoversi, invece, usare il joy- 
stick od i tasti cursore. 

Shot 

La vostra città sia subendo un raid 
aereo, e le forze nemiche si stanno 
paracadutando per occuparla. 

Presi alla sprovvista, tutti i tentativi 
di difesa sono risultati inutili: rulli- 
ma speranza è di evitare che ì paraca- 
dutisti atterrino sulla città. 

La vostra fama di tiratore scelto fa 
sì che vi venga affidato Piti carico di 
abbattere i numerosi nemici che si 
avvicinano velocemente alla meta. 

Avrete a disposizione il modernis- 
simo cannone-laser XL-412, che po- 
trete manovrare con ì seguenti ta- 
sti: 

* Y: sposta verso l’alto 

* B: sposta verso il basso 

* G: sposta verso destra 

* H: sposta verso sinistra 

* Spazio: spara 


My little pet 

State esplorando la piramide di Tu- 
tankamon, quando scoprite un pas- 
saggio segreto che vi porta in un labi- 
rinto sotterraneo disseminato di ra- 
re gemme. 

Una volta entrati, il passaggio si 
chiude e rimanete intrappolati: non 
esistono altre vie dì uscita. 


ca iscrizione in rilievo che dice di 
raccogliere tutte le gemme per poter 
uscire dal labirinto, ma in caso di fal- 
limento quella stanza sarà la vostra 
tomba. 

Nel l’esplorare il labirinto fate at- 
tenzione a non urtare le pareti per 
non perdere rapidamente le vostre 
energie. 

Per muoversi, usare il joystick in 
porta L 


Anche se ì colpi a disposizione so- 
no numerosi, è consigliabile non 
sprecarne perchè i nemici non danno 
tregua. 

Cruncher 

Una fantastica utility dedicata però 
ai solì possesori del disk drive. 

Si tratta dì un programma che per- 


i8 - Commodore Computer Ctub 





ANTEPRIMA 


mette di compattare qualsiasi tipo di 
file (Programmi, testi, schermate e 
così via)> in modo da risparmiare 
spazio sui dischetti. 

Alla domanda “Source File Marne”, 
dovremo rispondere coti il nome del 
file che intendiamo compattare e alla 
domanda "Gbject File Marne” ri- 
sponderemo con il nome che vorre- 
mo assegnare al ille compattato. 

Per ricaricare il file compattato è 
suiFicìeme caricarlo normalmente 
quindi dare RUM per dare inizio alla 
procedura di ' l sco inpatta mento". 

Una volta terminato, il programma 
in memoria si presenterà come fori- 
finale, per cui sarà possibile listarlo, 
modificarlo o mandarlo in esecuzio- 
ne {sìa con RUM che con eventuale 
SYS). 

La lunghezza dei programmi da 
compattare è limitata, in quanto è ne- 
cessaria la presenza in memoria del 
progra m ma compattatore, 




I eventuale crash del sistema du- 
rante reseca zi one del programma se- 
gnala che fope razione di <L crunch" è 
stata interrotta a causa della eccessi- 
va lunghezza del programma. 



Commodore Computer Club - £J& 






SPAZIO AMIGA 


Ai vostri comandi 


Una descrizione dettagliata di alcuni potenti 
comandi disponibili su Amiga 


di Luigi Cai legar! 



^V,bbiamo visto che esiste i3 co- 
mando di rìde nomi nazione dei file 
RENAME. Ovviamente esiste un co- 
mando equivalente che opera con i 
nomi dei dischetti, o meglio, usando 
termini precìsi, in grado di cambiare 
il nome assodato ad un volume su 
dischetto. Questo comando ha for- 
mato seguente; 

RELABEL (DRIVE) drive INA ME) 
nome 

Le parole DRIVE e NAME sono 
opzionali solo se si specificano i pa- 
rametri nel Lordine indicato, cioè pri- 
ma il nome del drive (DPI ; DF2:.,.)o- 


ve è inserito il dischetto da ride nomi- 
nare, poi il nuovo nome da assegna- 
re. Il nome del volume deve seguire le 
consuete regole di Amigados: non 
piu di trenta caratteri esclusi il dop- 
pio punto (: ) ed il di viso (/) e da speci- 
ficare tra virgolette se contiene spazi. 

Si noti che questo comando non ri" 
chiede finseiì mento del dischetto, 
perciò potrebbe operare soltanto sul 
dischetto corrente ne niente selezio- 
nato dal sistema per la lettura dei co- 
mandi, ovvero la nostra copia di la- 
voro di Workbench, 

Per aggirare l'ostacolo i possessori 
del solo drive interno possono usare 
una sequenza del tipo: 


COPY C/RELABEL TO RAM: (R) 
RAM; RELABEL dfl);n u (Ivo no me (R) 
DE LETE RA M: RE LABEL (R) 

Con tale sequenza si rende residen- 
te in memoria, ovvero nel RAMdUk, 
il comando RELABEL; in seguito si 
deve cambiare il dischetto e digitare 
la seconda linea che esegue il coman- 
do prelevandolo dal R AMdisk, come 
specificato dai primi quattro caratte- 
ri del nome del comando (RAM:). 

Infine si re- inserisce il disco di si- 
stema (Workbench) e si provvede a 
cancellare il comando, se non più ne- 
cessario. per rilasciare la memoria. 
Ovviamente chi possiede anche un 
drive esterno può inserì ri vi il disco 
da ri denominare e + lasciando il disco 
rii sistema nel drive interno, digitare: 

RELABEL DEI: nuovonome (R) 

Uno dei comandi avanzati ed inso- 
liti, per chi è abituato a vecchi sistemi 
operativi, ha il seguente formato: 

SEARCH (FROM) nome (SEARCH) 
stringi! (ALL) 

Permette di ricercare nei file di À- 
migados una stringa specificata di 
caratteri. La parola FROM è opzio- 
nale, come indicano le parentesi, ma 
se specificata deve essere seguita dal 
nome del file o della directory o la 
maschera di ricerca (vedremo tra po- 
co che cosa sia una maschera Amiga- 
dos), Il parametro "stringa*’ è la se- 
quenza di caratteri da ricercare, rac- 
chiusa tra virgolette se contiene spa~ 
zi; la parola SEARCH è opzionale 
solo se questo parametro segue il 
"nome" Quando "nome' 1 rappresen- 
ta una directory dì Amigados, speci - 


70 - Commodore Computer Club 



SPAZIO AMIGA 


tic andò ALL in coda al comando si 
Ottiene la ricerca della stringa all in- 
terno di tutte le eventuali sub-di- 
rectory di quella specificata e di tutti i 
file contenuti. Esempi; 

SEARCH dfl): Loredana (R) 

SEARCH FROM dfl:c Martella ALL 

(R) 

lì primo comando ricerca la stringa 
‘'Loredana 7 ' nella directory principa- 
le (root -directory, convenzionalmen- 
te chiamata SYS:) de) dischetto inse- 
rito nel drive interno. Il secondo co- 
mando ricerca la stringa "Mariella" 
nella directory 'c 1 presente nella di- 
rectory principale del dischetto nel 
primo drive interno ed in tutte le e- 
ventuali sub- directory, come specìfi- 
ca ÀLL. 

Parlavamo dì "maschera” di ricer- 
ca. I più esperti, anche ì vecchi pos- 
sessori dì C/64 o di MS-DOS avran- 
no intuito che si tratta della solita 
"pattern match ing^. Sotto Amigados 
è possibile cioè indicare con un’ap- 
posita stringa di caratteri che un co- 
mando deve operare su di un insieme 
di file i cui nomi hanno dei caratteri 
in comune. 

Se, sotto Amigados, viene ottenuto 
il nome di una directory dalla ma- 
schera, allora il comando può (se gli 
è concesso dalla sua sintassi interna) 
operare anche sulla directory e/o sui 
suoi contenuti. Nei sistemi operativi 
solitamente si usa un asterisco per in- 
dicare caratteri, mentre Amigados li- 
sa alcune combinazioni di caratteri 
speciali: il punto interrogativo indica 
un carattere qualsiasi, il cancelletto 
(o crash) seguito da una qualunque 
maschera indica qualunque o nessu- 
na ricorrenza con quella maschera. 
Usati insieme, (#?) indicano dunque 
"un numero qualunque dì caratteri 
qualunque". Inoltre esiste il simbolo 
di percentuale (%) che vale come 
lt stringa nulla 1 ' mentre la barra verti- 
cale (presente nella tastiera italiana 
nel tasto subito prima della ' frecci a- 
indietro" di cancellazione, in modo 
maiusocolo) indica la condizione lo- 
gica "o 7 . Usando le parentesi tonde sì 
possono raggruppare più maschere. 
Vediamo qualche esempio: 


TYPE pacco?? (R) 

DE LETE #?,DOC (R) 


LIST rìei$¥(ó((barra veriiCdte))Z) (R) 

DE LETE commi {S{ barra verticar 

mmm w 

1! primo comando stampa su vìdeo 
tutti ì file 1 cui nomi iniziano con 
Spacco" seguito da altri due ca- 
ratteri qualsiasi. 

II secondo cancella tutti i file ì cui 
nomi siano composti da qualunque 
numero di caratteri ma terminanti 
con \DOC” 

TI terzo comando lista su video tutti 
i file i cui nomi iniziano con la strin- 
ga "nel" e terminanti con un ea ratte- 

LL/tl . tt-'TU 

re 6 oppure Z . 

Il quarto comando cancella tutti i 
file i cui nomi iniziano con "commi” 
che abbiano, o meno, come terzo ca- 
rattere del nome"S” e che terminano 
con un numero qualunque di carat- 

ten q . 

Altro comando insolito nei sistemi 
operativi "vecchi” è quello che per- 
mette di riordinare alfabeticamente 
il contenuto di un file contenente ca- 
ratteri ASCII, Ricordiamo che i file 
ASCII con Amiga possono essere ge- 
nerati usando, da OLI, gli editor ED 
ed EDIT oppure, accessibile anche 
da Workbench, fi sofisticato NOTE- 
RAI). Li formato è: 


SORT (FROM) origine (IO) destinai 
(COLSTART colon) 

in cui "origine è il nome del file da 
riordinare, “destinaz 71 è il nome del 
file ove viene inserito il contenuto del 
file "origine 77 riordinato. Come sem- 
pre, se il file dove debbono essere in- 
viali Ì dati non esiste, viene creato ap- 
positamente mentre, se già esiste, il 
suo contenuto viene sostituito dai da- 
ti inviati dalla funzione. 

Le parole FROM eTO sono opzio- 
nali solo se si specificano i parametri 
nell ordì ne indicato, come sempre. 
Specificando la parola opzionale 
COLS CART si deve dare un parame- 
tro "colon" numerico indicante il 
punto da cui, per ogni linea, va effet- 
tuato fi confronto. 

Si noti che la funzione SORT, e 
molte altre dì Amigados, prevedono 
che una linea sia chiusa da un codice 
ASCII dì “LINE-FEED 1 il cui codice 
numerico (10) viene inserito dai vari 
editori ED, EDIT, NOTEPAD quan- 
do si preme il tasto Return. Esempi: 

SORT confuso TO ordinato COL- 
START 9(R) 

Legge il contenuto del file "confu- 
so s1 e lo inserisce, riordinato, nel file 



SPAZIO AMIGA 


"ordinalo" eseguendo i confronti tra 
le linee partendo dal nono carattere. 
Ciò significa che se nel file “confuso' 
si trovano tre linee ASCII come le 
seguenti... 

Loredana Lorcnzìn 
Luisella Dalmazi 

Mariella Cavestri 

...il sistema considererebbe ciascuna 
linea partendo dal nono carattere ed 
ignorando completamente i primi ot- 
to. Nel nostro caso considererebbe i 
cognomi di donna, inserendo nel file 
riordinato, nell’ordine: 

Mariella C a vesto 
Luisella Dalmazi 
Loredana Lorcnzìn 

Purtroppo i comandi come SORT. 
che fanno uso intensivo dell’area di 
memoria riservata al microprocesso- 
re 68000 {sta ck), possono anche bloc- 
care la macchina. Infatti uno dei più 
gravi handicap del sistema operativo 
di Amiga consìste nel cattivo control- 
lo delle arce di memoria. In partico- 
lare, quando sì giunge vicino all'e- 
saurimcnto della memoria (anche 
con programmi commerciali come 

Deluxe Paint" e "Deluxe music con- 
struction set") il sistema non segnala 
alcun messaggio di avvertimento (ti- 
po Om of memory ’) ma si blocca 
completamente. 

Anche operazioni come SORT, che 
possono esaurire la memoria di lavo- 
ro del processore, possono quindi 
bloccare il sistema. Allo scopo di evi- 
tare tale tragico incidente, esiste per 
fortuna un comando di formato: 


STÀCK (n) 

che, specificato senza parametro 
numerico, visualizza l'attuale quan- 
tità di memoria riservata allo stack 
del processore, dì norma 4000 bytes. ■ 

Prima di usare SORT con file mol- 
lo ampi o programmi commerciali 
sofisticati eseguiti da GLI (e in certi 
cari, perfino l'interprete BASIC) sa- 
rebbe opportuno aumentare notevol- 
mente questo spazio di memoria, per 
(tentare di) evitare gli incidenti 
sopra detti. 

Per esempio «10000 bytes di stack. 
solitamente sovrabbondanti per 
molte applicazioni, si ottengono 
con: 

STACK ÌOOOO ( R ) 

Altro comando che permette di in- 
tervenire In profondità” nella strut- 
tura e nel funzionamento di Amiga- 

dos è il seguente: 

ADDBUFFERS drive: nn 

Permette di fissare la quantità di 
memoria supplementare da assegna- 
re ad un drive come memoria di tran- 
sito dei dati. Senza entrare in dettagli 
tecnici, che annoierebbero^) tutti, 
aumentando la quantità di memoria 
riservata ad un drive si aumenta la 
velocità di lavoro degli stessi, in 
quanto il sistema può trasferire ì dati 
ad una velocità media superiore. 

Solitamente sono riservati 512 
bytes ad ogni drive. U parametro 
“nn" specificato dopo il numero di 
drive interessato indica quanti bloc- 
chi di 512 bytes ciascuno sono da ri- 


servare al drive. Si noti che questa 
memoria non potrà poi essere recu- 
perata (sino a spengi mento del com- 
puter!). Ad esempio: 

ADDBUFFERS dfì:ì i (R) 

riserva (512x11=) 5632 bytes per la 
gestione dei dati verso e dal primo 
drive esterno. 

Uno dei comandi più complessi di 
Àmigados, permette di conoscere lo 
stato del "task ", ovvero del program- 
ma, attualmente in esecuzione. Co- 
me si sarà capito, servirà solo ai pro- 
grammatori più evoluti, ma lo descri- 
viamo egualmente per dovere dì cro- 
naca. Presenta il seguente formato: 

STATUS (numerotask) (FULL) (TCB) 
(SEG&) {CU o ALL) 

in cui "numerotask” rappresenta il 
numero della finestra GLI dì cui si 
vuole sapere lo stato. In difetto, (de- 
fittili) si assume che debbono essere 
considerati tutti i task attivi. 

Specificando opzionalmente 
FULL vengono visualizzale tutte le 
informazioni possibili, da richiedere 
singolarmente con le altre parole 
TCB e SEGS. Questa parola è co- 
munque completamente inutile, per- 
chè, in difetto, il sistèma illustra co- 
munque tutti i dati. 

Specificando Lopzione TCB si ot- 
tiene la visualizzazione delle infor- 
mazioni riguardanti: quantità di me- 
moria riservata allo stack, dimensio- 
ne del vettore globale, livello dì 
priorità. 

Specificando l'opzione SEGS vie- 
ne visualizzato il nome della sezione 
nella lista di segmento. 

Specificando l'opzione GLI, oppu- 
re [equivalente ALL, vengono visua- 
lizzati solo i nomi delle sezioni di tut- 
ti i comandi correntemente caricati 
nelle finestre GLI correnti (o se- 
lezionate). 

Come molti avranno capito, la va- 
stità del comandi di Àmigados c la 
loro potenza impone spesso lunghe 
digitazioni, specialmente quando si 
sta lavorando con file molto 'ramifi- 
cati”, ovvero inseriti in sub-sub-sub 
directory. 

Esiste un comando che permette di 
accordare iì lavoro di digitazione, fi 
suo formato è: 



72 - Commodore Computer Club 



ASSIGN no me per ntìmefd (USI) 

Permette di assegnare ad un devine 
(fisico, come una stampante, o logi- 
co, come un file) ad una directory. 

\\ parametro “nomepcr” rappresen- 
ta il nome del de vice fisico (RAM: 
SER: PAR: PRT: N1L: rispettiva- 
mente per: ramdisk, interfaccia seria- 
le, interfaccia parallela, interfaccia 
stampante personalizzata da prefe- 
rences, fittizio) o directory o drive 
(DFO: DF1:.4 

li parametro "nomefir rappresenta 
il nome di disco, il de vice fisico o la 
directory che sarà rappresentata dal- 
la specifica “nomeper”, Specificando 
LIST viene visualizzata la lista delle 
corrispondenze assegnate attual- 
mente, Facciamo qualche esempio: 

ASSIGN dm: dfl:devs (R) 

ASSIGN x : c/UST (R) 

Con il primo comando si indica al 
sistema che tutte le volte che si digita 
“devs;”si intende la directory “devs" 
inserita nella directory madre del di- 
schetto nel primo drive esterno. 

Con il secondo comando sì indica 
che tutte le volte che si digita “xd* si 
vuole eseguire il comando LIST pre- 
sente nella directory' V\ 

Restano ora da descrivere solo i co- 
mandi da utilizzare uei file “batch” 
di comandi. E' opportuno, però, de- 
scrivere dapprima il modo in cui av- 
viene la redirezione di Input/Output 
sotto Amigados. 

Senza usare troppi paioioni, pos- 
siamo dire che normalmente l’input, 
cioè la lettura di dati, avviene da ta- 
stiera mentre l'output, cioè la scrittu- 
ra ovvero la trasmissione dei dati, av- 
viene sul video in ambiente CLI. Esi- 
stono però due caratteri; il “maggio- 
re" ()7 ed il “minore” (0 che permet- 
tono di specificare, rispettivamente, 
dove vogliamo mandare, o da dove 
ricevere, i dati. Come abbiamo già 
detto, esistono i seguenti nominativi 
per periferiche (devices): 

"RAM:" per i] RÀMdìsk (sezione di 
memoria usata come un disco) 
“SER:” per l'interfaccia seriale RS- 
232 

“PAR:” per l'Interfaccia parallela ti- 
po Centronics 

“PRT:” per l'interfaccia Stampante 
personalizzata 



“NIL:” per l'interfaccia fittizia 

Per quanto riguarda le tre interfac- 
ce stampanti sì noti che i parametri 
(velocità dì trasmissione, bit di pari- 
tà, modulo conti nuo/ca ila singola, 
alta velocità/ Alta qualità eccetera) 
possono essere regolati solo usando 
il programma Preferences (anche da 
Workbench). Questo programma per- 
mette anche dì fissare altri parametri, 
come il numero di colonne sul video 
(60/80), la velocità del cursore, i colo- 
ri, eccetera e può essere invocato da 
CLI con un semplice: 

System/Preferences (R) 


L'uso di Prete reuces è molto intuiti- 
vo: basta usare il mouse e la descri- 
zione del manuale Tornito con la 
macchina. Nel nostro caso, perla re- 
golazione dei device usabili anche da 
CLI, ci si ricordi di opzionare alla fi- 



ne del lavoro, in Preferences,”SAVE” 
per uscire (vicino a “USE"). In questo 
modo tutti i parametri scelti, dai co- 
lori del video ai parametri di control- 
lo delle stampanti (si noterà che sono 
già previsti “drive" per molte stam- 
panti commerciali) verranno memo- 
rizzati dal sistema sul nostro dischet- 
to Workbench o DOS di lavoro (pre- 
cisamente nel file "system-confi- 
guration” nella directory “devs”) e sa- 
ranno automaticamente usati ogni 
volta che useremo CLI con questo 
dischetto, 

domando ai nostri operatori di re- 
direzione, ciò significa che volendo 
inviare, o meglio 44 redirigere”, l'uscita 
del comando LIST su stampante se- 
riale (o modem, dipende da che cosa 
abbiamo collegato al connettore) in- 
vece che sui vìdeo, si userà sem- 
plicemente: 

L IST > SER: (R) 

Sul video non comparirà niente di 
LIST, ma la nostra stampante seriale 
stamperà prontamente i risultati di 
LIST. Per fare un altro esempio di re- 
direzione di uscita, volendo inviare 
su stampante il contenuto di un file 
ASCII chiamato “nel” {posto nella 
directory “s” nel primo dischetto e- 
sterno) si userà: 

TYPE > PRT:sEriel (R) 

Ovviamente è possibile usare un fi- 
le, invece di una periferica, per rice- 
vere od inviare dati. Ad esempio, vo- 


Commodore Computer Ctub - 73 




lendo memorizzare la dabr corrente e 
l'ora come prodotti da DATE in un 
file chiamalo "dataodiema 11 , si utiliz- 
zerà un semplice: 

DATE ) dataodiema (R) 


Analogamente è possibile inserire 
in un file ASCII, chiamato "bui data 1 , 
tutti i comandi richiesti dal comando 
date, usando un editor (ED nel no- 
stro esempio) così: 


DISKDOCTOR DRIVE dJO: (R) 


ED hufdata (R) 

19-mùy-S? 1 8:00:00 (R) 

(ESCARE) X (RETURN) 

. Tr e (issare automaticamente con DA- 
TE quella data (ed ora) usando da 
CL1: 

DATE < hufdata 

In questo caso abbiamo rediretto 
l’input del comando DATE devian- 
dolo dalla tastiera (normalmente as- 
sunta come periferica di ingresso in 
difetto di operatori di redirezione) al 
file da noi creato. 

Il RÀMdisk può essere usato esat- 
tamente come un dischetto, come ab- 
biamo già visto in articoli precedenti, 
ma molto più veloce. 

In Amigados, versione 1.2. è previ- 
sto un apposito comando dal for- 
mato: 

DISKDOCTOR DRIVE DFn: 

In pratica, per tentare il recupero di 
un dischetto, sì deve digitare un co- 
mando tipo: 



poi attendere che il sistema carichi 
da Workbench il comando e segnali 
di inserire nel drive specificato (nel 
nostro esempio, quello interno) il di- 
schetto da analizzare. Quindi sì pre- 
me Return. 

I) sistema leggerà finterò contenu- 
to del disco e cercherà di recuperare 
il maggior numero dì file possìbile. 
Sul video, durante il lavoro, vengono 
segnalati eventuali messaggi per in- 
dicare che è stato riscontrato un erro- 
re hardware... 

"Hard error surface" NN 
...oppure software: 

"File is unrcadable o bad checksum” 

Nel primo caso si intende che il di- 
fetto è proprio nel supporto del di- 
schetto, perciò alla fine de! recupero 
è vivamente consigliabile gettarlo in 
pattumiera c comprare in futuro 
marche migliori. 

Nel secondo caso il sistema richie- 
derà se deve cancellare il file oppure 
lasciarlo inalterato. In seguito viene 
suggerito, da video, di effettuare una 
copia del dischetto (DISK COPY) per 
recuperare ì file ricostruiti c provare 
a ri formatta re il disco stesso. 

Un dottore per Amiga 

Tutti coloro i quali hanno lavorato 
con vari computer, di qualunque fa- 
scia di prezzo, sanno che capita spes- 
so di ritrovarsi con dischetti illeggibi- 
li. Non che sia colpa del drive di Ami- 
ga, tecnologicamente e tecnicamente 
uno dei più avanzati nel f ambiente 
del 3S (si pensi che è a doppia testi- 
na ed in grado di leggere una traccia 
intera in un colpo solo) ma spesso ca- 
pita egualmente che un dischetto 


male inserito, la mancanza di cor- 
rente od una variazione di tensione a 
causa dì un temporale oppure, più 
frequentemente, dischetti dì cattiva 
qualità, diano questi difetti. 

Con gli altri computer, solitamente, 
si deve ricorrere ad appositi pro- 
grammi per cercare di recuperare i 
dati preziosi contenuti nel di- 
schetto dilettoso. 

A proposito di dischetti, con Amiga 
è possibile montare anche dei drive 
per il formato classico 5,25’ ormai in 
via di estinzione pe la maggiore affi- 
dabilità dei 3,5. Ciò permette, tra fal- 
tro, di emulare vìa software o via 
hardware (leggi Sidecar) rispettiva- 
mente il 30% ed il 95% del software 
MS/DOS (quello degli IBM). Un in- 
conveniente è che il sistema non rile- 
va automaticamente, come perì 3,25, 
il cambiamento di un dischetto. Esi- 
ste perciò, nella versione 1.2, un co- 
mando dal formalo: 

DISKCHANGE DFn; 

Esso impone al sistema di leggere ì 
dati relativi al dischetto inserito nel 
drive da cinque pollici specificato col 
solito sistema: se è collegato come 
primo esterno sì usa DF1: per il se- 
condo esterno DF2: eccetera. 

Si noti che spesso capita di vedere 
ricomparire file cancellati (DELE- 
TE) perchè al momento di impartire 
il comando di cancellazione non 
vengono fisicamente cancellati dal 
disco, ma solo segnalato, con un ap- 
posito codice sul primo blocco, che il 
loro spazio è ri utilizzabile, cosa ch e 
il sistema può anche non fare subito 
lasciando praticamente intatto c re- 
cuperabile tì file. 

Perciò DISKDOCTOR permette di 
recuperare un file sicuramente se è 
stato cancellato da poco tempo. Que- 
sto comando permette di ricostruii re 
facilmente file grazie alla loro parti- 
colare struttura "'ad albero doppio* 
che è fisica sul disco e non so- 
lamente logica. 

Per j tecnici: non esiste, quindi, un 
qualcosa di simile alla BÀM del C/64 
(o di Apple), ma ogni file contiene 
'l’indirizzo" del precedente e del suc- 
cessivo: partendo da uno solo di essi 
si può, virtualmente, ricostruire fin- 
terà struttura di un disco. 


74 - Commodore Computer Club 




ENCICLOPEDIA L.M. 


Tre nuovi comandi 
per operare in Basic 


Come aumentare la potenzialità 
del vostro C/64 programmando , 
con una manciata di byte, alcune 
particolari funzioni 


a cura di Alessandro de Sìmone 


FINO 

(25754/25903) 

F* ind è un’istruzione che sì trova spesso nei tool di pro- 
grammazione in Basic ET utile durante la correzione di un 
programma quando é necessario ricercare un’istruzione, o 
un gruppo di istruzioni, allo scopo di apportarvi modifi- 
che o sostituzioni, 

Il comando presentato in queste pagine risulta completo 
e versatile. 

Con la prima delle due forme sintattiche è passibile ri- 
cercare solo stringhe, mentre con l’altra si potranno indivi- 
duate le righe che contengono comandi Basic; abbiamo 
quindi aggiunto un parametro che permetta di specificare 
se il gruppo di caratteri da ricercale è uti insieme di co- 
mandi Basic oppure una stringa. Come certamente sapre- 
te* i comandi Basic non vengono memorizzati come se- 
quenza dì caratteri ascii, ma sotto fórma di codice di un so- 
lo byte, detto “ToketT; ad esempio, il codice dell'istruzione 
Frinì è 153, mentre quello di Goto è 137, 

L operazione di codifica dei comandi Basic viene detta 
“tokenizzazione T ed ha un duplice scopo: il primo è quello 
di consentire il risparmio di memoria dal momento che ì- 
struzioni che occupano in media 4 byte, saranno contenu- 
te in un solo byte; inoltre il programma in esecuzione ri- 
sulterà più veloce dal momento che non sarà più necessa- 
ria fin te rp relazione dei comandi, carattere per carattere, 
ma basterà una tabella in cui siano contenuti i salti da ese- 
guire per le varie istruzioni. 

La sintassi per il funzionamento del coniando Find è 
il seguente: 

srsxxxxa strino 

In cui XXXX è Lindi rizzo dì partenza della routine (inte- 
ramente rilocab ile, come tutte le routine dì questa enciclo- 
pedia), e " Stringi è la siringa di caratteri da ricercare: gli a- 
pici sono necessari per impedire la tokenizzazione della 


stringa stessa, che non ne permetterebbe il riconoscimento 
durante la fase di ricerca, 

La seconda forma sintattica è la seguente: 

SYS XXXX OPT, COMM 

in cui OPTè un numero qualsiasi compreso tra 1 e 255. e 
COMM è il comando cercato, 

E J possibile inserì re più comandi, separati dal carattere 
doppio punto* purché sia presente, nel listato oggetto di ri- 
cerca, la stessa sequenza. 

Non è quindi possibile inserire altre istruzioni di seguito* 

sulla stessa riga, perche verrebbero interpretate come co 
ma ntl i da ricercare. 



Commodore Computer Ciub - 7b 



Come utilizzare le routine 


r 


c 

LJJ u.1 N.31 di Commodore Computer Club è 
iniziata una nuova rubrica che ha Jo scopo di 
venire incontro ai principianti (senza trascu- 
rare gli esperti), die desiderano potenziare a] 
massimo le caratteristiche del proprio 
computer. 

Il Basic presenta, infatti, carenze notevoli 
che possono esser limitate ricorrendo all’uso 
dì routine in linguaggio macchina (LM); è 
sufficiente attenersi alle istruzioni pubblicate 
per utilizzare i sottopTOgrammi LM con la 
massima semplicità. Gli “esperti” potranno 
fare a meno di seguire le istruzioni ed utilizza 
re direttamente t programmi L.M. pubblicati, 

I principianti, invece, fe opportuno che leg- 
gano con attenzione le “istruzioni per l'uso”. 

0' Se questa è la prima volta che leggete la 
rivista, accendete il vostro Commodore 64 e 
saltate al punto N.2. 

1 1 Accendete il computer e, se desiderate 
^fondere” alcune (o tutte) le routine di que- 
sto numero con quelle tratte dai numeri pre- 
cedenti (a patto, ovviamente che ne siate in 
possesso); caricate il file-programma “Nuovo 
Sistema” (nome standard adottato) con una 


FISSA TOP MEMO 


100 PRINTCHR$( 147) "FISSA TOP DI 
MEMORIA " 

110 INPUT " ULTIMA LOCAZIONE" ;X : 
X~X-1 

U2 PRINT.PRtNT-I VAldkì ATTÙAL 
l SONO:" ; FRI NT 

113 Xl~INT(X/256> :X2-X-(X1*256) 

115 PRINT P£EK( 55) F'PEEK(55) : PR 
LNT"PEEK<56) : "PEEK'(5Ó) 

116 PRINT' FRE(O) F'FRE(Q) 

117 PRINT : FRI NT” l VALORI NUOVI 
SAREBBERO : “ : PRINT ; PRINT"PEE 
K(55) :"X2 

118 PRINT PEÉK{56> F'Xl 

120 PRINT. PRINT" CONFERMI? (S/N) 

i ii 

130 ÌF PEEKC 197)^64 TREN 130 
135 IF PEEK( 1 97) < >13 THEN POKE 
198.0: RUN 

150 POKE 55. X2 -POKE 56 r Xl: PUNÌ 
60 

160 PRINT'TRE(O) F'FRE(Ù) :PRINT: 
PRlNT'NEW ,J 


SAVE ZONA RAM 


150 PRINTCHRiC 147 } .-INPUT '' LOCAZ 
IONE INIZIALE" ;X 
160 INPUT 1 LOCAZIONE FINALE" :T 
170 PRINT : PRINT' INIZIO: "X sPRINT 


delle due forme sintattiche che si riferiscono, 
rispettivamente, ai possessori di nastro o 
disco: 

Load “Nuovo Sistema”, 1,1 
Load “Nuovo Sistema*\S,l 

Subito dopo digitate NEW e premete il ta- 
sto Return. 

2 1 Caricate il programma “Fissa Top di me- 
moria" e lanciatelo col solito RUN. Alla do- 
manda “Ultima locazione?” digitate 20000 e, 
alla successiva richiesta di conferma, premete 
il tasto “S". Le altre informazioni che appaio- 
no sul video possono esser comprese solo da- 
gli esperti: i principianti possono tranquilla- 
mente ignorarle e saltare alla prossima fase 
(N.3). 

3 1 Caricate (o digitate dalla rivista) il pro- 
gramma “Caricatore". 


4 f Digitate dalla rivista la routine che interes- 
sa (scritta sempre in Basic, contenente in pro- 
va lenza istruzioni Data e numerata da 1000 in 
poi). 


"FINE T 

180 IF 7<-X THEN RUN 

190 PRINT : FRI NT 1 CONFERMI? (S/N) 

il 

200 G£T A$:IF A$~"" THEN 200 
2 10 IF A$< r’S 11 THEN RUN 
220 PRINT : INPUT "NOME FILE" ;A$ 
230 PRINT 1 1- CASSETTA" :PRINT"2~ 
DISCO " 

240 GET B$:IF THEN 24 0 

250 IF B$ -"1" THEN W-1;GCTQ 280 
260 IF THEN W**8:GOTO 280 

270 GOTO 240 
280 PRINTCHR$(1 47); 

290 POKE 195,5 : POKE 631 ,19. POKE 

632 A3:POKE 633. 13 .POKE 63 
4,13;PQKE 635,0 

300 Xl-INT(X/256) :X2-X-(X1*256> 
:PRINT' FT44 , “XV 1 :PT43 . "X2 ; 
310 Yl~lNT(T/256) :Y2*T-(Y1*256) 
:PRINT “ :PT46F‘Y1" :PT45, ''Y2 
320 PRINT : PRINT : FRI NT'\S* "CHR$(3 
4)A$CHR$(34)" F'WW' 

330 PRINT : PRINT: FRI NT :PRINT :PR1 
NT"SYS647 38" 


CARICATORE 


150 REM PER UTILIZZARLO , LEGGI 
LE ISTRUZIONI PUBBLICATE SU 
160 REM COMMODORE COMPUTER CLUB 


5 f Effettuate una copia di sicurezza del pro- 
gramma che rappresenta la “fusione 1 dei due 
listati (“Caricatore 1 ' + routine Basic 
pubblicata). 


6 1 Dopo aver digitato Run, alla domanda “Da 
quale locazione? 3 " rispondete con l'indirizzo 
iniziale suggerito nello stesso titolo della rou 
line in oggetto. Se il computer, dopo alcuni 
secondi, visualizza, come indirizzo finale, un 
valore diverso da quello pubblicato nel titolo 
(oppure il messaggio “Errore di trascrizio- 
ne”)* interrompete il lavoro (lesti Run Stop e 
Restore) e verificate con attenzione quanto 
avete trascritto da rivista. 

Se s invece, compaiono messaggi “confor- 
tami" (Routine allocata da... a... Attivare 
con Sys... ed altre informazioni comprensibili 
dagli espcri!)* digitate il programma dimo- 
strativo e lanciatelo; da questo momento ave- 
te a disposizione una nuova routine LM da 
attivare mediante SYS come indicato nelle 
istruzioni pubblicate per ciascuna routine. 


7 ; Ripetete le operazioni, dal punto 3 in poi, 
per ciascuna routine pubblicata che intendete 


170 : 

180 ì'-’-l .‘GOST/B 1000 . PRINT . INPUT 
"DA QUALE LOCAZIONE" ;X 
190 READ W:Y-Y+1;!F W< 0 THEN 21 
0 

200 GOTO 190 

210 PRINT'PRIMA LOCAZIONE - ’X 
220 PRtNT"ULTIMA LOCAZIONE ~"X+ 
Y-l SPRINT 

230 PRINT" CONFERMI? (S/N)" 

24 0 GET A$: IF A $ THEN 240 
250 ir A$-"S “ THEN NESTORE :T~X 
GOTO 280 
260 RUN 
270 : 

280 GOSUB 1000 SPRINT SPRINT" ATTE 
NDERJE. , . " SPRINT :W~ù 
290 READ B ; IF B >~Q THEN POKE T, 
B :T-T+ 1 :W-W+B :G0T0 2 90 
300 READ 3 : IF B< >W THEN PRINT :P 
RINTCHR$( 18) "ERRORE DI TRAE 
CRIZIONE " sEND 

310 PRINT" ROUTINE ALLOCATA DA"X 
"A'T-V'CmPR." : PRINT 
320 PRINT" ATT IV ARE CON SYS'XsPR 
INT 

330 Xl-lNT(X/256) :X2^X-(X1*256) 
: PRINT" POKE44," XI” :P0KE43 r >, 
X2 • 

340 YÌ-INTCT/256) :Y2-T-(Y1*256) 
.PRINT 1 ' .POKE46 . r 'Yl" .P0KE45, 
"Y2:£ND 


76 - Commodore Computer Club 









■'V-v 




‘coJlezmnare’ non dimenticando di digitare 
NEW dopo ogni felice conclusione della fase 
N.6.. Ai principiami consigliamo vivamente di 
trascriverle tutte in modo da aumentare Ja 
propria esperienza e + soprattutto, per evitare 
incomprensioni degli articoli che leggeranno 
su Commodore Computer Club. 


, + , v V ^i^puLVi V IUU, 

• - :; 

^Caricate, dopo un nuovo NEW, il program- 
ma Save Zona Ranri e r dopo il Run, alla 
domanda "Da quale locazione?" rispondete 
con 20000. Alla seconda domanda L A quale 
locazione J1V ri pondei e digitando TtncliriiHO fi- 
nale ddrultima routine trascritta, A seconda 
se avete un registratore oppure un drive, suf 
nastro (oppure sul disco) vi ritroverete, dopo 
aver risposto alle varie domande, il file- 
programma “Nuovo Sistema" (nomeche sug- 
geriamo di assegnare quando compare la refa- 
ti va domanda). Tale file -programma {da cari- 
care come indicato al punto l) sarà utilissimo 
sia per arricchire la vostra raccolta (trascri- 

vendo le routine dei prossimi numeri di Corri- 

. 

rtiodorc Computer Club), sia per utilizzarle in i 

vostri listati, i 

" • ■ , - •/ C? 

7- |*' Vvl.' ',• * ■ ■■ ’,Yl' - - - J Zv 

..... ; ‘ ./ ‘ § 

9 * Digitate SYS 64738 oppure premete il tasto 
dt Reset (se lo possedete) in modo da rimette- 
re "a posto" il computer, Caricate il program- \ 
ma “Fissa Top di memoria" e rispondete coti ; 
20000 alla domanda che vi porràL da questo 
momento potete disporre sia delle consuete 
istruzioni Basic che delle routine LM richìa- \ 
inabili con le éorrisportdenti SYS- Non di- 
monticate di ripetere la preseme fase (N.9) | 
tutte le volte die premete il tasto di Reset o I 
dopo un reset software (SYS 64738), Se, ìnve- 
ce, spegnete il computer, sarà necessario at 
tuare la fase NT e N.2 per inserire nuovamen- 

» 

te nel calcolatore le nuove routine ed usarle ; 


seiua pericolo. 




Collaborazione dei lettori 


I 

■ ;■ I 


I lettori che intendono coHabontre devrmo 
inviare (almeno) tre routine, retativi listati di- 
mostrativi ed articoli esplicativi. Le norme da 
seguire per la stesura del listati (piuttosto rigi- 
de, per ovvi molivi dì compatibilità) sono state 
segnala te su l N .3 L Per ulteriori tu formazioni 
comunque, è possibile telefonare in Redazione 
(0V9467m) chiedendo di Michele Maggi, 


GRAPHIC 

EXPANDER 


128 



Aggiunge al tuo Commodore 
128 ben 14 comandi Basic e- 
spressamente dedicati alla ge- 
stione della grafica su schermo a 
80 colonne (640x200 punti), 

E’ possibile ottenere il software 
in questione (solo su dischetto) 
compilando il coupon a fondo 
pagina e indirizzandolo a: 

Systems Editoriale 
Viale Famagosta, 75 
20142 Milano 

Modalità di pagamento 

Ai coupon va accluso un assegno di Lire 27.000 (compren- 
sivo delle spese di spedizione) intestato alia Systems 
Editoriale. 


Vi prego di inviarmi il dischetto Graphic Expander 128. 

Nome....... 

Cognome... 

Indirizzo..... 

Cap Città 


Accludo assegno di Lire 27,000. (comprensive dt spese di 
spedizione). 


Firma 




ENCICLOPEDIA L.M. 


1000 PRINTCHR9K 147) "FINO ” 

1010 PRIMT : PRINT”SYS XXXX,TYPE,C 
OnLINE” 

10E0 PRINT: PRINT”TYPE“SPECIFICA 
CDMLINE” 

1030 FRI NT : FRINÌ” TYPE=0: COM 
LINE-STRINGA (CHE DEUE” 

1040 FRINÌ” ESSERE PR 

ECEDUTA DA: ”;CHR$(34) 

1050 FRINÌ ; PRIIMT” 1<TYPE<255: 

COML I NE=L I STA COMANDI ” 

1060 PRINT : PRINT”COMLINE=STRINGA 
O LINEA COMANDI” 

1070 FRINÌ : PRINT” SE COML 

INE E* UNA STRINGA” 

1060 PRINT” DEUE ESSERE P 

RECEDUTA DA: ”;CHR$(34) 

1090 RETURN 

1100 DATA 173,000,003,141,167,0 
06,173,001, 003 , 141 , 16B , 006 , 
064 

1110 DATA 165,060,105,135,141,0 
00,00 3,165,061 , 105,000,141 , 
001 

1160 DATA 003,036,653,174,036, 1 
5B, 103, 136,076,036,653, 174, 
104 

1130 DATA 608,003,032,115,000,1 
65,043,133,651,165,044, 133, 
656 

1140 DATA 169,004,133,654,160,0 
00,177,651,600,017,651 ,60B, 
015 

1150 DATA 173,167,002,141,000,0 
03,173,166,002,141,001,003, 
076' 

1160 DATA 059,169,160,000,132,2 

53.164.254.177.251 . 133.002, 
230 

1170 DATA 254, 640, 667, 164,553, 1 
77 , 122 , 640,014, 166 , 005,240, 
031 

1160 DATA 197,002,506,268,230,2 

53 . 240 . 209 . 200 . 226 . 160 . 002 , 
177 

1190 DATA 251,133,020,200,177,2 
51 , 133,021,032,019,166,166, 
020 

1600 DATA 165,051,076,501,166,1 
60,000, 177,251, 170,200,177, 


251 

1610 DATA 133,252,134,651,024,1 
44 , 15B, -1 , 13195 


10 REM ESEMPIO DI EUNZIONAMEN 
TO FINO 

50 XX=25754 : REM INDIRIZZO SCE 
LTO DA C.C.C. 

65 PRINTCHRSC147) 

30 SYS XX, 1 ,PRINT"PIPPO” 

31 FRINT”LINEA 30” 

35 POKE 198,0: UIA1T 196,1: FRI 
NTCHRSC 147) 

40 SYS XX , 1 , "PIPPO” 

41 PRINT”LINEA 40” 

45 POKE 19B , 0 : bJAIT 19B,1;PRI 
NTCHRSC 147) 

50 SYS XX, 0, ”PIPPO 

51 PRINT: PRINT”LINEA 50" 

55 POKE 19B,0:LiAIT 19B,1:PRI 
NTCHRSSC 147) 

60 SYS XX , 1 , PEEK 

61 PRINT "LINEA 60" 

65 POKE lSa,0:UAIT 198,1:PRI 
NTCHRSC 147) 

70 SYS XX.0, "PEEK 

71 PRINT "LINEA 70” 

80 END 

100 PR INT”PI PPO” 

110 PRINT"L' ISTRUZIONE PEEK SER 
UE A ...” 

150 A=PEEK (1024) 

130 REM PIPPO CHIAMA PIPPO 



78 - Commodore Computer Club 




ENCICLOPEDIA L.M. 


Program:' FINO 
□rigiri: SC000 
By Fabio Soryato 


LDA 50300 
STA $02A7 
LE A $0301 
STA $02AG 
CLC 

LDA 314 
ADC #$07 
SIA $0300 
LDA $15 
ADC #$00 
STA $0301 
J5R 3AEFD 
JSR $B7SE 
TXA 
PHA 

JSR SAEFQ 
PLA 

BNE *C0PC 
JSR $0073 
*C0£C LDA $£B 
STA 5FB 
LDA $ec 
STA $FC 
*C034 LDA #$04 
SIP $FE 
LDY #500 
LDA CSFB) 


; Salva gli indirizzi 
[delle errar routine' 


; Utilizzando l’indiriz- 
; 2 Q di chiamata della 
;SYS, sceglie il 
jsalto della error 
; routine , 

[Prende una; virgol a 
; ed un numero a Q bit 
;e lo salva; 

jprende una nuova vir- 
[gola e se il parametro 
sera 0, 

;saJLta le apici:” 
[Inizia la ricerca 
[dall * inizio del 
; programma 

j 

[Salta il link e il 
inumerà di linea 
;se e ' la fine del 
» Y ; programma 


1NY 

ORA t$FB) t Y 
BNE *C050 


*□041 LDA $03A7 ; mette i vecchi punta- 
STA $0300 [tori alla error 
LDA 30SA0 'routine 
STA '$0301 

JflF $A33B ; eri esegue REM 
*C050 LDY tt$00 
STY SF.D 

*C054 LDY $FE ; prende un byte 
LDA C$FB3,Y 
STA 

INC 5FE ; se la linea e 1 piu' 

BEQ *C041 ; lunga di 255 caratteri 


LDY SFD 
LDA C57A) 
BEO *C07£ 

LDX $00 
BEO *C0B7 

Cn? $0£ 
BNE *C050 
INC $FD 
BEO *C041 

BNE *C054 


; torba al basic 

» 

Y ;se la comparazione 
[ha successo, stampa 
; la linea 

i se la linea basic 
; in esame e* terminata* 
; passa alla successiva 
; se il confronta ha 
; successo , 

; passa alla riga suc- 
; cessi va , 

[altrimenti ricomincia 
[il confronto dal 


[primo carattere 

*C07c? LDY #$02 ^prende il numero 

LDA C5FBI) , Y ;di linea e lo salva 


STA 

$14 

;.in S14-S15 

INY 



LDA 

C$FB} . Y 

STA 

$15 


JSR 

$AS13 

;ricErca la linea e 

LDX 

$14 

5 mette, 1 ’ inizio della 

LDA 

$15 

; stessa in $5F-$60 

jnp 

$A6C3 

[stampa la linea; 

L 


; la routine termina con 
;JnP C$0300}, che 
[ conterrà 1 , in questo 
;caso $CBS7 


*Cfi07 LDY 

#$00 

[prende i due bytes 

LDA 

C $FB ) ; 

Y [di link 

TAX 


;e lì mette in SFB-FC5* 

INY 



LDA 

CSFBl , 

Y 

STA 

$FC 


STX 

$FB 

; iniziando cosi J a. 

CLC 


[scandire una nuova 

BCC 

*C034 

[linea di programma 


XOR 

(25904/25969) 

!1 Commodore 64 è provvisto di alcuno istruzioni che 
permettono le operazioni binarie 0& AND e NOT. 
Un'altra operazione, fondamentale per V aritmetica bina- 
ria, è Hstmzione XOR, assente nel Basic V.2 
L'operazione XOR permette di determinare se due bit 
sono uguali o meno: se eseguiamo XOR tra due bit uguali 
il risultato sarà 0, se invece i due bit sono diversi il risulato 
sarà 1. 

Siccome non è possibile la simulazione di XOR tramite 
OR, AND e NOT (cosa che può avvenire* ad esempio, per 
il NGR. il NAND ed altri operatori booleani). la routine di 
queste pagine, lunga una manciata di byte, permette dì u- 
sare, anche in Basic, l'operatore XOR. 

II "funzionamento" è il seguente: 

SYSXXXX,A> B. VAR 

in cut, come al solito* XXXX è f indirizzo di partenza 
della routine, A t B sono i due numeri (che devono essere 
compresi tra 0 e 65535}, tra cui eseguine F operazione, e Var 
è il nome della variabile numerica, in virgola mobile, in 
cui verrà posto il risulato delfope razione stessa. 

1000 PR INTCHRSC 147 3 ”XDR ,J 
1010 FRINÌ : PRINT 1? 5Y5 XXXX,A,B,NLJ 
riUAR” 

10B0 FRINÌ : FRINITA & B- I DUE 0F 
BRANDI DI: A XOR B" 

1030 FRINÌ : FRINÌ 11 0<-A<-65 

535 0< ~B< =B5535 " 

1040 FRI NT: PRINT"NUMUAR=UARI AB IL 
E NUMERICA CHE CONTERRÀ f ,r 


Commodore Computer Ctub - 79 



ENCICLOPEDIA L.M. 


1050 PRINT” IL RISULTATO D 

ELL ‘OPERAZIONE" 

1060 RETURN 

1100 DATA 032 , 853 ,174, 032 , 138 , 1 

73.032.247.103.132.251 .133, 
252 

1110 DATA 032,253,174,032,138,1 

73.032.247.183.069.252.133, 

252 

1120 DATA 152,069,251,133,251,0 

32.253.174.032 . 139.176. 133, 

253 

1130 DATA 132,254,165,013,005,0 
14,240,005,162,022,106,003, 
003 

1140 DATA 164,251,165,252,032,1 
45,179, 166,253,164,254 , 076, 
212, 1B7 , -1 , 9673 
1150 END 


Program: XOR 
Qrigin; &C000 
By Fabio Sorgato 


JSR SAEFD 
JSR SAQ8A 
J5R S67P7 
5TY £FB 
STA SFC 
JSR S8EP0 
J£R 5AD0A 
JSR SB7F7 
EOR SFC 
STA SFC 
TYA 

EOR SFB 
STA SFB 


; prende una virgola 
je un numero intero 
; positivo a 16 bit, 

; sa Iva il numero 

iprencle un'altra 
;virgola e un altro 
; numero 

t esegue l'operazione 
jdi or esclusivo Cxor3 


JSR SAEPD 
JSR $B0SB 


STA SFD 
STY SFE 
LDA S0D 
ORA S0E 
BEO +C®3H 


prende una terza 
virgola e crea la 
variabile dove mettere 
il risultato 
salva i puntatori 
alla variabile 
se la variabile non 
e* numerica a virgola 
mobile 


LDX WS16 ; 
jnp CS0300) 


*C034 LDY SFB 
LOA SFC 
JSR SB331 


7TYPE FI I SMATCH ERRDR 

converte il risolato 
in un numero a virgo 
la mobile e lo mette 


nel fio aocumuìator 


LDX 2FD ; usando i puntatori, 

LDY $FE ì trasferisce il Flp acc 
JnP SBBD4 ; nel la variabile 


DUMP 

(25970/26172) 

Dump è un'istruzione die non richiede parametri. Ser- 
ve. infatti, a riporta re la lista ile! le variabili utilizzate fino a 
quel momento. 

Impartita la SYS XXXX. in cui XXXX è la locazione di i- 
nizio della routine, apparirà la lista delle variabili intere, 
stringa e in virgola mobile fino a quel momento 
elaborate. 

Per riportare la lisci su stampante è necessario eseguire: 


OPEN 1,4 : CMD /: SYS XXXX 


Al termine della stampa Sarà necessario riportare 
l'output su video con: » 

PRINT#]: CLOSL I 


1000 PR INTCHR5C 147) “DUMP” 

1010 PRINT : PRINT "SYS XXXX” 

1020 PRINT: PRINT‘‘PER DUPUT SU ST 
AMPANTE: " 

1030 PRINT: PRINT" OPEN 1,4:CMD 
1 : SYS XXXX” 

1040 PRINT: PRINT" AL TERMINE : P 
R1NT#1 : CL0SE1 ” 

1050 RETURN 

1100 DATA 160,000,165,045,166,0 
46,134, 096 ,133, 095 , 220 , 040 , 
208 

1110 DATA 004,197,047,240,070,2 
00,177,095,136,041 , 120,240, 
065 

1120 DATA 177, 095, 041 , 12B.20B, 1 

02.177.095.041.127.032.210, 
255 

1130 DATA 200,177,095,041,127,0 

32.210.256.169.036.032.210, 
255 

1140 DATA 169,061,032,210,255,1 
69,034,032,210,255, 160,003, 

. 177 

1150 DATA 095,133,034,200,177,0 
95, 133,035,160,002,177,095, 
032 

1160 DATA 036,171,169,034,032,2 
10 , 255 , 024 , 144 , 008 , 096 , 144 , 
175 

1170 DATA 177,095,032,210,255,2 
00 , 177 , 095 , 032 ,210,255 , 169 , 
061 


80 - Commodore Computo < Club 


ENCICLOPEDIA L.M. 


1180 DATA 032 ,810, 855 , 324 , 165 , 0 
35,105,002,072,165,036,105, 
000 

1130 DATA 163,104,032,162,137,0 
32,221 , 133,032,135,130,032, 
033 

1200 DATA 171,024,144,042,160,0 
00,177,055,041,127,032,210, 
255 

1210 DATA 200,177,095,041,127,0 
32,210,255,169,037,032,210, 
255 

1220 DATA 163,061,032,210,255,2 
00,177,035,072,200, 177,035, 
16B 

1230 DATA 104,032,145,173,024,1 

44 . 202.150.000. 024. 155.035 , 
105 

1240 DATA 007,133,095,165.036,1 

05.000. 133.036. 163.013.032, 
210 

1250 DATA 255,165,035,166,036,0 
24, 144,142,-1, 25154 



Program: DUriP 
□ rigiri : $C000 
By Fabio Sorgalo 


LDY #$00 ; inizia il LIST delle 
LDA $2D jvariabili dall’inizio 
LDX $5E ; dell 'area riservata 

STX $60 ;alle variabili 


STA $5F 

*C0CA CPX $30 i se a' terminata la 
BNE *C012 ; sessione 
cnP $2F 

E£0 *C056 ; torna al basic. 


•caia INY 

LDA (£5F1,Y ; prende il seconda 
DEY ; carattere del nome 

AND #$60 ;della variabile, se il 

; bit 7 e* a 0, la 
[variabile e 1 numerica 


BEO *C0SB 
LDA CSSFl 
AND tt$Q 0 
BNE *C086 


; a virgola mobile 
,Y ;sé il bit 7 del 
; primo carattere e 1 a 0 a 
; la variabile e strinna 


LDA CSSFljY ; stampa il prima 
AND #$7F 
JSR $FFD8 
INY 

LDA £$5F),Y ; e il secondo carat- 
AND tt$7F jtere del nome, 

JSR SFFDE 

LDA tt$E4 ; stampa $ 

JSR SFFDE 

LDA ft$3D ; stampa = 


JSR SFFDS 

LDA tf:$EE ; stampa " 

J5R $FFDB 
LDY #$03 

LDA CS5F1 3 Y ; ubando i puntatori 
STA $EE ideila variabile 

INY 

LDA C$5F5,Y 
STA SE3 


LDY #$0E ;e la lunghezza, 

LDA CSSFl.Y 

JSR SABE4 ; stampa la variabile 
LDA ; stampa u 

JSR SFFDE 

CLC ; ricerca la prossima 

BCC *C0Et0 ; variabile* 


*CS5B RT5 ; Ritorno al basic 

*C05S BCC *C00A 'Richiamo di salto, 
*C0SB LDA CS5FljY ; stampa il primo 
JSR $FFD£ 

INY 

LDA C$5F) S Y ;e il secondo 

JSR SFFDE [Carattere del nome, 

LDA #$3D ; stampa ~ 

JSR SFFDE 
CLC 

LDA $5F [usando i puntatori 


Commodore Computer Club - 81 


ENCICLOPEDIA L.M. 


ADC ; al la variabile, 

PHA 

LDA $B0 
ADC #$00 
TAY 
FLA 

J5R SBBAB j carica il contenuto 

ideila variabile 
; nel Flp accuntuiator 
*C07A JSR $BDDD ;Converte in stringa 
JSR 5BH87 ; prepara i puntatori 

;di stampa 

JSR $AB21 *e stampa la variabile 
CLC ; passa alla variabile 

BCC *C0B0 ; successiva 
*C005 LDY #$00 i 

LDA C$5F3,Y ; stampa il primo 
AND #$7F 
JSR SFFDP 
INY 

LDA C$5F>,Y ;e il secondo 
AND #S7F i carattere del nome 
J5R EFFD2 

LDA #$25 ; stampa k 

JSR SFFD2 

LDA #$3D ; stampa = 

JSR SFFD2 
INY 

LDA C^SFljY ; prende il byte 

PHA -, alto e 

INY 

LDA CS5F),Y ;il byte basso, 

TAY 

RLA ;convÉ3rte in 

JSR SB331 ìfloatxng point Cflpl 

CLC ; e stampa come 

BCC *CS7A ;se Fosse una varia^ 

;bile flp- 

*C0B0 LDY #$00 ; passa alla variabile 

CLC i successiva, 

LDA $5F 

ADC #$07 ; saltando i 7 bytes 


STA $5F idi cui e 1 composta 

LDA $60 : una variabile 

ADC #$0fr 
STA $60 

LDA #$0D -stampa un CR 

JSR SFFD£ 

LDA $5F 
LDX $60 
CLC 

BCC *C053 ;e continua 


(Le routine dì questo numero sono opera di Fabio 
Sorgalo). 



a®S:*3 -# 


Vuoi collaborare esclusivamente su supporto magne- 

, tico, L output su caria e facol- 

con Commodore tativo. 

■ 

CompiltGr Club? Se vuoi proporre programmi in lin- 


'4% 

: 


con 


Gli articoli pubblicali verranno 
compensati con cifre in linea coti i 
più alti standard dì mercato» 


guaggìo macchina ricordati che devi 
Ricorda che verranno esaminati so- sempre allegare il disassemblato 

io i programmi inviati so disco pur- commentato del file LAI: non di- 
che corredati da articoli scritti con nienticare che i nostri lettori voglio- 

Word I foce ssor normalmente Com- rm ìmnarorA « nrnar^mmarp rmn 


he vuoi proporre programmi in Jtn- Verranno esaminati solo ì program- 

guaggìo macchina ricordati che devi m i e gli articoli preventivamente 

sempre allegare il disassemblato concordati per telefono: non inviare 

commentato del file LAI: non di- articoli o programmi che non siano 

* ° . 

menticare che i nostri lettori voglio- stati esplicitamente concordati con 

™ * 


mercializzatl. 


. 4 


. ■ •: 


no imparare a programmare e non la Redazione, 
si accontentano di digitare una fila 

di codici apparentemente privi di II numero di telefono 

significato. ài C.C.C. è: 02/84.67.34.8 


-yxZ'-i- ■ 


--.-•4- V • ' 

>£> ' • 


Qualsiasi programma» tabella» arti- 
colo e disassemblato deve pervenire 


:12 k =3 







■ , - ••••:. 




82 - Commodore Computer Club 



PROTEZIONI 


Tecniche di Auto Run 

per C/128 


Un paio di accorgimenti per tentare 
la protezione dei programmi scritti 

in “modo” 128 


di Domenico Pavone 


XJ na delle caratteristiche che ren- 
dono evidente li salto qualitativo dal 
C/64 al C/128, è senza dubbio la 
possibilità di far partire un prò* 
granulia semplice mente inserendo 
un dischetto nel drive c accendendo 
il computer (procedura di boot 
strap). 

Pur essendo ovvi i grossi vantaggi 
che si possono ottenere con tale 
tecnica, c altresì evidente che se un 
dischetto è “imbottito" dei 144 fi Ics 
che può contenere, soltanto uno 


potrà godere del privilegio di essere 
caricato e lanciato airaecensione o 
tramite il comando BOOT, Si può 
anche utilizzare la pressione con* 
temporanea dei tasti Stufi c Run/ 
Stop per lanciare il primo pro- 
gramma presente nella director), ma 
il problema non si discosta di 
molto* 

Quindi, a meno di non utilizzare 
un dischetto per ogni programma, un 
buon "autorun 1 ’ può risultare utile 
anche per il C/128 in modo, ov- 


viamente, 128: vuoi per rendere (un 
po') più diffìcile ìa sprotezione di lui 
nostro programma, vuoi per ri- 
sparmiare Fini mane fatica di digitare 
RUN dopo il caricamento. 

Il tema delibati tostar! (anche se con 
riferimento ad altre macchine) è 
stato trattato svariate volte su questa 
rivista. Dovreste già sapere che il 
"di rotta mento" di alcuni vettori del 
sistema operativo e quasi sempre 
positi alla base della realizzazione di 
un qualsiasi Run Maker, Filtrando 





PROTEZIONI 





1 ' i_l 






SJMONes. 

ùAlLtfJA 


■ 

| 

... * ■■■ '.• • . 

i 

1 

*5 . 

■ •' ’ .* ' •: 1 

- . .. 


, ■ . & 

, h . : ■■■■■ , - 

: ;• > • • • - • •?••• " 




:"v'^ • 


f 

V 

, 


fe'§ 


yw 




nel merito, ciò che consente ad un 
programma di partire non appena 
termina iJ caricamento, è che invece 
di eseguire la routine interna di 
READY, va diretta mente a quella di 
RUN (o ad una nostra routine che si 
conclude con un salto al RUN). 

Tutto questo, nel C/64, significava 
alterare due locazioni, la S0302 e la 
S03Q 3 (77 0- 77 1 ) , c h c co n te n e va no 
l’i udiri zzo del famigerato Basic 
Warm Start. 

Nel C/128, invece, il Basic Start è 
puntato dalle loc a zio ni. .*$0302 c 
$0303 E Già, proprio le stesse. Questo 
] i e rò non vuol d i re eh e si p os s a n o 
■usare rii bYocco ì T Aun Mata per CftA 
limitandosi a limare qualche dif- 
ferenza di locazione. Nel C/128, 
infatti. bisogna anche tenere conto di 
altri fattori, come ad esempio l'inizio 
del l'area Basic, normalmente posto 
alla locazione SI COI (7168) che, se si 
ini zia! izza la pagina grafica, viene 
spostato a $4001 (16385). 

Ciudi rizzo di fine programma, 
inoltre, non coincide con quello di 
inizio delle variabili (come nel caso 
del C/64): per queste viene utilizzato 
il banco !. 

M a ve ri fi c he re m o p ì ù c h i a ra m e n t e 
queste considerazioni facendo ri- 
ferimento ai due programmi pub- 
blicati, la cui descrizione sempli- 
ficherà quanto sinora detto. Le due 
routines per raggiungere lo stesso 
obiettivo seguono due metodi dif- 
ferenti, e la loro diversa applicazione 
potrà risultare più o meno van- 
taggiosa a seconda delle vostre 
esigenze. Per chi non voglia ad- 
dentrarsi nel Lapp rotondi mento dela 
struttura dei due listati, basterà 
digitarli avendo l'accortezza di in- 
serire due lìnee tipo,., 

/ TRA P 1000 

1000 FRINÌ ERRS(ER): HELP: 
SLOW: END 


,..che potranno poi essere cancellate 
una volta raggiunta la certezza che 
tutto funzioni correttamente. Dna 
vo 1 1 a 1 a n ci a t i . e n t ra m b i i p rog ra m m i 
fanno tutto da soli. 

Anzitutto chiedono quale file si 
vuole dotare di auto rum, il nome da 
assegnare al file oggetto (quello 
"lavorato") e .se si desidera, o meno, 
l’inibizione del tasto Ru n/Stop. Se si 


84 - Commodore Computer Club 




PROTEZIONI 


risponde positivamente a quesf ul- 
tima domanda, il programma con 
fautorun ripartirà automaticamente 
se si cerca di fermarlo con la pres- 
sione di STOP, di STOP + RESTO- 

RE e. addi ri tura, con il tasto Reset. 

A questo punto ve rrà generato sullo 
stesso dischetto un fife con differenti 
caratteristiche a seconda del MA- 
KER utilizzato. Il primo creerà un 
leader molto breve (I blocco) con il 
nome da voi scelto, che una volta 
caricato con BLOÀD oppure LOAD 
"nome ftleTSJ a sua volta caricherà 
il programma desiderato e lo man- 
derà in esecuzione. 

11 secondo produrrà un file unico 
comprendente il programma ori- 
ginale, sempre col nome che gli 
avrete assegnato, da caricare a lì- 
di esso nella forma rilocata 
(BLOÀD). Questo file sarà però 25 
blocchi più lungo dell' originai e, per 
cui a voi la scelta sul rapporto 
vantaggio / svantaggio dei due si- 
stemi. 

Un’altra considerazione utile ai 
fini di tale scelta è che il sistema 
“leader” funziona indipendente- 
mente dalla conformazione in cui si 
opera rispetto alla pagina grafica, 
mentre il secondo metodo presenta 
un inconveniente: volendo, potete 
creare rautorun con la pagina gra- 
fica impostata (magari per vostre 
successive esigenze), ma il file ge- 
nerato in questo caso sarà ben 61 
blocchi più lungo, in quanto com- 
prenderà anche la memoria da 
SI COI a $4000. 

Una precisazione quasi superflua: i 
programmi che si possono trattare 
devono essere Basic, oppure in LM 
purché dotati di una linea tipo "10 
SYS...”. Inoltre* anche se non in- 
dispensabile, è conveniente spegnere 
c accendere il computer prima di 
usare i “makfir'\ 

II primo listato 

Compito dì questo programma c la 
creazione sul dischetto di un file che 
all’atto del caricamento si disponga 
nelle locazioni da $0263 a S0303 
{decimale: 61 1/771), facendo sì che le 
ultime due (che corrispondono al 
vettore di Basic Start) puntino ai- 
ri nizio di una routine posta a partire 


da $0263, 

Per ottenere ciò si apre un file 
programma in scrittura (col nome 
determinato dall’input di riga 30) e si 
inseriscono, come primi, due dati: ì 
valori (ovviamente nel formato bas- 
so/alto) che determineranno la lo- 
cazione a partire dalla quale esso 
verrà caricato (righe !0(M 10), Subito 
dopo viene inserita la routine in 
linguaggio macchina che si occuperà 
del caricamento del programma da 
lanciare (righe 120- 160), con iti coda i 
valori ASCII del nome di questo ed 
eventuali spazi se la lunghezza del 
nome è inferiore ai 16 caratteri (170- 
180). A questo punto si immettono 
nel file su disco i vaion presenti da 
$02 A2 a $0301 senza alterarli (riga 
190) e infine, in quelle che saranno le 
locazioni $0302 e S0303, ì puntatori a 
$0263 {riga 200), 

Quando il file così composto verrà 
caricato con BLGAD, in pratica 
manderà immediatamente in ese- 
cuzione la routine che inizia a S0263, 
Questa , dopo aver disabilitato i 
messaggi del S.Q. e aver pulito lo 
schermo, provvedere a reìnserirc 
nelle locazioni di Basic Start i valori 
dì default o* se si è scelto diver- 
samente (righe 50-80), vi allocherà 
Tindirizzo della routine di RUN 
($5AA6). 

Quindi la routine si occupa del 
caricamento del programma ri- 
chiesto usando il LOAD del kemal 
(SFFD5). il quale prevede che se si 
setta un file tramite la routine posta a 
SFFBD con un indirizzo secondario 
uguale a zero (vedi disassemblato da 
$275 a $27 A), il caricamento inizierà 
dalla locazione puntata dai registri X 
e Y, nei quali troverà inseriti ì valori 
dei puntatori di inizio Basic ($2D- 
$2 E), aggiornati automaticamente 
dal S O, se si setta la pagina grafica. 

Effettuato il LOAD, non resta che 
saltare alla routine di RUN,., e il 
gioco è fatto. 

Da tenere presente che il file ge- 
nerato, Oltre al vettore di Basic Start 
include anche quello della routine di 
errore, posto a $300 e $301 (768 e 769 
in dee,), Se si vuole che, ìn caso di 
errore nel programma, questo non sì 
fermi, sarà sufficiente modificare la 
riga 190 in,,, 

FOR X=674 TO 767 


4)1 £ uguale) c aggiungere la 

linea... 

195 PRINT#5, CHRSfLOW);; 
FRINÌ# 5, CHRS(Hl); 

...(facendo attenzione ai caratteri di 
punto e virgola) dove LOW e HI sono 
i puntatori alla routine cui saltare in 
caso di errore. Ulteriori protezioni 
potete realizzarle aggiungendo i vet- 
tori posti subito dopo il Basic Start, 
basterà aggiungere in coda alla lìnea 
200 tutte le 
PRINT*5>CHR$(xx); 
che volete, tenendo presente che ì 
vettori più “interessànti"' sono: 

5 318 $319 .Interruzione non ma- 
scheratile 
$328 $329 :Stop 
$332 $333 :Save 


Il secondo listato 

li flusso operativo di questo pro- 
gramma può essere distinto in due 
fasi: 1) Caricamento del file da 
trattare. 2) Salvataggio dello stesso 
includendo la memoria che va da 
$0300 all'inizio del Basic> dopo 
averne modificato i vettori di Basic 
Start. 

Allocata in memoria la routine ìn 
LM a partire da $02E5 (righe 100- 
150) ed eventualmente (ìn base alla 
risposta alfinput di riga 50) la mi- 
ni routine a $BOO, la prima fase 
descritta viene eseguita da Basic. Per 
ottenere lo scopo t prima sì caricano 
due locazioni del buffer di tastiera 
(nel C/128 situato da 842 a 851 dee,) 
con il carattere 13, ASCII di RE- 
TURN; quindi, dopo aver scritto 
sullo schermo (con Io stesso colore 
dello sfondo) in posizione adeguata: 

DLOÀD Rome file ” 


SYS 606 

( = $2E5), si impartisce NEW che. 
oltre a cancellare il programma, 
provocherà lo svuotamento del buf- 
fer di tastiera con conseguente ca- 
ricamento dei programma deside- 
rato e salto alla routine LM. Questa sì 


Commodore Computer Club - 85 



PROTEZIONI 


occuperà della seconda fase: mo- 
dificherà ì valori di Basic Start in 
maniera da farli puntare a RUN o, se 
si è risposto no al quesito delle righe 
60-90. Sì dirotterà ad un’altra routine 
posta da SORGO (buffer di cassetta) 
che verrà salvata assieme al pro- 
gramma da trattare. Per il SAVE vero 
e proprio si usano le locazioni libere 
di pagina zero SFA e $FB per se- 
gnalare al kernal lindi rizzo da cui 
iniziare (il valore FA deve essere 
inserito nel fa ccumu lato re), e che 
sarà £0300; mentre per la posizione 
di fine caricamento verranno sfrut- 
tate le locazioni SAE ed SAF, nelle 
quali il SD, deposita l'indirizzo di 
fine programma dopo un LO AD, 
Una volta effettuato il salvataggio, il 
computer va al RESET di sistema. 


La routine posta a £BO0 si limita a 
ripristinare i valori standard di Basic 
Start, ma nulla vieta che vi inseriate 
tutte le modifiche che volete prima di 
saltare a S5ÀÀ6 per il run n ponendo 
in coda al programma basic altre 
linee DATA e modificando il valore 
della FOR di riga 160. 

Durante il caricamento dei files 
generati da entrambi ì Run Maker lo 
schermo di 40 colonne risulterà 
vuoto cosi come pure quello in 80 
colonne usando il sistema ‘leader", 
mentre con i programmi in autorun 
su unico file il video 80 colonne 
resterà attivo. 

Per concludere, non resta che 
invitarvi ad una certa attenzione 
usando il secondo Run Maker, in 


quanto non è fornito di controllo 
sugli errori del D,O S. Un eventuale 
FILE EXISTS o FILE NOTFOUND 
vi porterà a dover ricominciare da 
capo. 


SCHEDA TECNICA 

Software applicativo per protezioni di 
programmi. 

Idoneo per computer C/128 e non 
adattabile ad altri computer Com- 
modore 

Richiedo il disk drive 

Anche i programmi pubblicati in 
queste pagine sono contenuti nel 
disco “Directory" di questo mese. 


3 REM COMMODORE 126 + ORICE 

* : 

5 REM RUN MAKER TRAMITE LOfìDER 
S REM BY DOMENICO FAUGNE 
? : 

10 SCNCLR : CDLOR0 , 1 : C0LDR4, 1 : CDLDRS , 1 : COLGRS . 16 

£0 INPUT “NOME FIDE DA CAR ICARE" ; NFS: LF-LENC NF$ } : I FLF> 16GRLF< 1THEN10 

30 SCNCLR: INPUT "NOME DA ASSEGNARE AL LOAOER” ; NL$; LL-LENC NLS ) : 3 f LL> 160RI„L< 1THEN3G 

40 SCNCLR: PRINT” INIBIZ I ONE DELLO STOP CS/N)?” 

S0 GETKEYXS 

60 IFX$“"S”TH£NLI-16S: HI “30: REM PUNTATORI A ’ RUN ’ 

70 IFXS“"N’ , THENLI='13B: HI"77 : REM PUNTATORI DI DEFAULT 

60 IFXSO ”5”ANDXSO ”N"THENS0 

30 FAST: SCNCLR: PRINT "ELABORAZI ONE IN CORSO” 

100 OPENS, 6,5, NL$+” .6,0”: I FDS< >0THENSCNCLR : PRINTDSS : CLOSES : SLOLJ ; END 

110 PRINT#S,CHRS(a93; iPRINTJtS, CURASI ; ; REM INIZIO CARICAMENTO OA $0263 1611) 

130 FORX-61 1T061S : RE AD A: PRTNTttS , CHRSC A) ; : NEXT 

133 FRINTitS, CHRS1LI 3 ; : PR I NTttS , CKRSC 1633 ; : PRINTH5 , CHRSC HI ) ; 

140 FORX-633 TO 637 : READA : PR I NTS5 . CHRS.C AI ; : NEXT 

1S0 PRINTB5, CHRSCLF) ; REM LEN NOME FILE 

160 F0RX-63ST0SS7: READA: PRINTttS, CHRSCA3 ; rNEXT 

170 FORX=lTDLF: PR1NT#5, MIDSCNFS, X , 1) NEXT: REM INSTALLA NOME FILE 
1B0 IFLF< 16THENF0RX=1T016-LF : PR INTttS , CHR3K32) ; : NEXT 
138 F0RX-674T0769: PR INTttS , CHRSCPEEKCX) ) ; : NEXT 

300 PRINTtfS , CHRS199) ; ; PR INTttS , CHRSC2 I : REM UETTORE BASIC START DIROTTATO A $0363 

318 CLOSES : SCNCLR: SLOW : PRINT'T ATT O" : END 

330 DATA 169,000,833, 144,395,033,066, 193 

330 DATA 163,141,003,003,143,003,003,169 

240 HATA 800,162,006,166,033,186,255,163 

350 DATA 162, 146,160,003,033,169,266, 169 

2S0 DATA 000,166,045,164,046,033,313,255 

270 DATA 076,166,090 

260 END 


86 - Commodore Computer Club 







DI SASSETI BLATD RUM flAKER TRAMITE LDADER 

t listato 15 


0263 

LDA 

#500 

Disabilita ì messaggi 

0265 

JSR 

SFF30 

di sistema . 

0260 

JSR 

SC142 

Pulisce lo scherme. 

026B 

LDA 

#IC6 

Resetta i puntatori 

0260 

LDX 

#$40 

del BASIC START Co da 

026F 

SIA 

$0302 

programma li diretta 

0273 

srx 

$0303 

alle routine RUM 5 . 

0275 

LDA 

#$00 

Apre un canale sulla 

0277 

LDX 

#$08 

periferica 0 usando 

0273 

TAY 


zero come indirizzo 

027A 

JSR 

SFFBA 

secondar io , 

027D 

LDA 

#$ LF 

Setta lunghezza CLP) 

027F 

LDX 

#$S2 

e posizione del nome 

0281 

LDY 

#$02 

del File da caricare. 

0203 

JSR 

SFFBD 



m 



■s 




V 

\ 


02BG 

0280 

020A 

028C 


LDA #$00 
LDX $2D 
LDY $2E 
J5R 33FFD5 


Esegua un LQA0 dalia 
posizione inserita 
nei puntatori di 
inìzio basic. 


02BF JMF S5AA6 Us a routine di RUM. 


0292 - 02A1 


Nome file da caricare. 



5 REM C/l BB AUTORUN MAKER 

6 RErl BY DOMENICO PRUONE 

7 REM LISTATO N.2 
B ; 

10 COLBR0 , 1 : COLORI, 1 ;COLORS, 1 :COLORS, 16 
20 SCNCLR: INPUT”FILE DR TRATTARE" ; NFS 
30 IFLENCNFS 5> 160RLENCNFS >< 1THEN20 

40 SCNCLR: INPUT "NOME FILE TRATTATO" ; RF$ : RF-LENCRFS} : IFRE<40RRF> 16THEN40 
50 SCNCLR: PRINT”INIBIZIONE DELLO STOP CS/N1?” 

60 GETKEYXS 

70 IFXS-”S”TH£NLI-166: K I -90 : REM PUNTATORI R ’RUN' 

00 IFXS- ,, N’ , THENLI“0: HI-11 : REM PUNTATORI A S0B00 
30 IFXIO ”S"ANDX$<> ”N"THEN60 

100 SCNCLR: FOFX-606 TO 620 : READA: FOKEX , A: NEX 1 

110 P0KES21 , LI : P0KES22, 162: F0KE623, HI : REM INSTALLA PUNTATORI 

120 FORX-624 TD 637 : READA : POKEX , A : NEXT 

130 PDKEB3B, RF: REM LEN NOME FILE TRATTATO 

140 F0RX-G39 TD 657 : READA: POKEX , A : NEXT 

150 FORX-ITORF : F0KE6S7+X , ASCCMIDSCRFS , X , 113 : NEXT 

160 IFX$-”N" THENFQRX-2816 TO 2026 : READA : POKEX , A : NEXT 

170 PRINTCHRSC 144 } ; : P0KE842 ,13: P0KE843 , 13 : POKE208 , 2 : REM <CR> IN BUFFER TASTIERA 
100 FRI NT: PRINT: PR1NT: PRINT"DLOAD“ ; 

130 PR INTCHRSC 341+NFS+CHRSC341 : FDRX-1T04 : PRINT: NEXT : PRINT "5YS506” : FRI NTCHRST 13 3 
200 NEW 

£10 REM ROUTINE IN S25E — 

220 DATA 163,000,162,003,133,250,134,251 
230 DATA 032,144,255,032,066,133,163 
240 DATA 141,002,003,142,003,003 
250 DATA 162,008,160,255,032,106,255,163 
£60 DATA 162,146,160,002,032,105,255 
270 DATA 163,250,166,174,164,175,032,216 
200 DATA £55,076,061,255 

250 REM ROUTINE IN $B00 — 

300 DATA 155, 130, 162,077, 141,002,00? 

310 DATA 142. 003,003,076, 186, 030 
3£0 END 


Commodore Computer Club - 87 



PROTEZIONI 



n I S ASSEMBLATO AUTDRUN FIAKER 
(listato 2) 


02SE 

LDA 

#500 

Prepara duo puntatori 

0260 

LDX 

#503 

in pagina zero con 

0262 

STA 

SFA 

indir h iniziale £5300) 

02E4 

STX 

£FB 

per la routine 5AUE , 

sesE 

JSR 

5FF90 

□ inabilita messaggi .. 

0269 

JSR 

SC1H£ 

Pulisce lo schermo* 

02GC 

LDA 

ttSAS 

Diretta i puntatori di 

0EEE 

LDX 

#$5ft 

START BASIC verso la 

0270 

STA 

50302 

routine RL!N C55AAG) □ 

0279 

STX 

50303 

altrove Cds programma) 

0276 

LDX 

#508 

Apre un canale sulla 

0279 

LDV 

#£FF 

per i F erica S - 

0270 

JSR 

SFFBA 



057D 

0E7F 

0SBI 

0203 

LDA 

LDX 

LDY 

JSR 

#£05 

#532 

#£02 

5FFBD 

Setta lunghezza e 
posizione del nome 
del File oggetto* 

0286 
02BB 
020 A 
02BC 

lda 

LDX 

LDY 

JSR 

#5FA 

SAD 

SAF 

SFFD0 

Salva la memoria da 
50300 Fino alla 
locazione puntata de 
$AE e SAF Cfins prog . ) 

0£0F 

JMP 

SFF3D 

Ua a routine RESET* 

0£32 

- ©2 Al 

Nome File oggetto* 

0B00 

0B02 

0B0H 

0B07 

LDA 

LDX 

STA 

STA 

#£C6 

50302 

50303 

Rosetta si valori di 
deFauìt i puntatori 
di BASIC START? 

0B0A 

JflP 

5SAAG 

Salta a RUM . 


§/ ^ 


88 - Commodore Computer Club 





Eccoci qui, siamo le voci di Radio Deejay! Da sinistra verso destra puoi vedere Marco Galli, Ronny Hanson, Claudio Cecchetto alla 
guida, Albertino in alto, Linus in basso, Gerry Scotti, Daniele Milani, David Lee Stone e Amadeus. Noi diciamo jay. Deejay anche tu! 


W^jmrQpoHiiPtikt.0 rota Omsw 









Fin dallo sbarco in Italia della Commodore Commodore Computer Club è il punto di rife- 
rimento di tutti gli utenti di C/64, Vie 20, C/16, Plus 4 ed ora di PC 10/20 
ed Amiga. 



Articoli didattici, recensioni e programmi istruttivi ed a basso costo 
hanno fatto di Commodore Computer Club la prima rivista 
italiana d'informatica. 

Ma, per i lettori. Commodore Computer Club non è solo rivista; è 
consulenza telefonica gratuita, software originale pubblicato a late- 
re dalla stessa casa editrice, un ponte verso Fi nfonnatica “maggio- 
re” anche attraverso la collaborazione con le riviste sorelle "Perso- 
nal Computer'" e "Computer". 

E' per questa ragione che, anno dopo anno, aumenta il numero dei lettori che preferiscono ri- 
cevere la rivista in abbonamento invece di acquistarla in edicola. Ad essi l’editore riserva una 
sene di vantaggi esclusivi come: 

• un libro in omaggio da scegliere tra i titoli disponibili della collana I libri di Systems*; 
•l'uso di una linea telefonica speciale per richieste di consigli, e consulenza, il cui numero e le 
modalità d’uso verranno comunicate in forma riservata alia ricezione delfabbona mento; 
•un canone annuo particolarmente interessante di lire 40.000 per 1 1 fascicoli dì Commodore 
Computer Club e di lire 35.000 per 1 1 fascicoli di Personal Computer; 

•l’esclusivo canone cumulativo di lire 65.000 per 1 1 fascicoli di Commodore Computer Club ed 
1 1 di Personal Computer; 

•uno sconto del 10% su tutti gli acquisti per corrispondenza dei prodotti software su disco o 
cassetta, fascìcoli arretrati o libri della Systems senza limiti di quantità. 


I titoli disponibili sono Quelli reclamerai sull'apposita pagina pubblicitaria "La libreria di Systems". 



| m I I PÌ O Q IO li VO I U fTl ^ d &! I 3 OO*. I 3 03 I l I ^ 11 di y’S tO I Il S , ■ 

Registrate oggi stesso il mio abbonamento a: □ Commodore Computer Club (Lire 40,000) 

□ Commodore Computer CI ub+ Personal Computer (Lire 65,000) 


f Desiderando ricevere le copie ordinate con la massima urgenza, accludo assegno bancario n ro., 
Banca » — — per lire 


voi intestato. 


□ Contentandomi dei normali tempi postali ho inviato oggi stesso l'importo di lire a mezzo C/C postale N. 37952207 

intestato a Systems Editoriale - VJe Famagosta. 75 - 20142 Milano. 


Home ... 

vìa » 

CAP 


N,ro, 


■ »+ ■*■■*■■■ «#pq ■■ RM 


■ 


telefono 


lOICIWlIW ■■.■■.....■.pii. 

B ■-•« ftiiii pf if-Kf ■« ■ ■ ■ ■ • ■■ H mm m-m ■■ I ■■ -■* rii ■■-*■■■■ rnm m àifl Bit pii B •• Hit 


Città ... 


Ritagliare e spedire in busta chiusa regolarmente affrancala a Systems Editoriale - V. le Famagosta, 75 - 20142 Milano. 


PRIVATO 


Test di coppia 


Un programma, presente su Directory 
di questo mese, di notevole interesse 
per ricerche sul rapporto di coppia 


di Claudio Romeo 



! nutile dire che è necessario riflette- 


Lavorando nel campo sociale, 
spesso mi capita di constatare quan- 
to poco si conoscano tra loro persone 
che, per legami di parentela, affettivi 
o di lavoro, passano anche mollo 
tempo insieme. 

Nel lavoro che svolgo quotidiana- 
mente individuo una delle conse- 
guenze più drammatiche di una rete 
di relazioni non chiare: ma anche 
nella “normale 5 ’ vita di tutti i giorni 
spesso si vivono tensioni clic non esi- 
sterebbero se le persone die vivono 
insieme si conoscessero più nel 
profondo. 

Il tesi presente su Directory è un 
programma (troppo lungo per trova- 
re spazio su queste pagine) che, pur 
essendo un gioco, ha una cena credi- 
bilità scientifica (non per vantarmi, 
ma sappiate che ho meritato trema 
all’esame di sociologia sostenuto 
presso runi versila Cattolica di Mila- 
no, con seminario sulla costruzione 
dei questionari d'indagine). 

La validità del lest non risiede tanto 
nel valore assoluto del punteggio fi- 
nale, quanto nel rigore con cui le do- 
mande vengono formulate. 

Che cosa fa 

Vediamo che cosa è possìbile stabi- 
lire con il test; il suo fine è quello di 
determinare la misura in cui ì due 
componenti di una coppia sì cono- 
scano reciprocamente. La coppia 
pud essere formata da marito e mo- 
glie, padre e figlio, amico e amico e 


di conoscersi, 
il programma pone una serie di do- 
mande (ne sono presenti 1 7 nella ver- 
sione memorizzata su Directory), o- 
gnuna corredata da un certo numero 
di risposte ^graduate"; ciò significa 
che queste sono all'inlerno dì una 
'scala' ai cui estremi sono presenti 
due diversi modi d’approccio alla do- 
manda stessa. Ef quindi importante 
sottolineare che non esiste una rispo- 
sta '"giusta” sulla quale si fonda fela- 
borazione dei test, ma importante è 
determinare 11 differente modo con 
cui vengono “affrontate” le domande 
poste. 


re con la massima attenzione prima 
dì fornire una risposta* che deve esse- 
re la più onesta possìbile. 

Il gioco-test si deve svolgere tra due 
partecipanti alla volta (“A” e "B"), 
Mentre il primo, dopo il Run. rispon- 
de alle domande, faltro deve spostar- 
si in un'altra stanza, in modo da evi- 
tare qualsiasi interferenza. Solo 
quando verrà richiesto dal program- 
ma, i due partecipanti si scambieran- 
no il posto. 

Al partecipante “A” il programma 
chiede, per una stessa domanda, due 
risposte: quella che, secondo "A”, è 


Commodore Computer Club - 9 T 





PRIVATO 


quella “corretta 1 ’ e quelli! che suppo- 
ne che “B” darà in seguito, quando 
toccherà il suo turno. 

Se la previsione riguardo aìJa rispo- 
sta che darà “B“ risulterà corretta, al- 
lora vuol dire che “A” conosce 
bene “B + \ 

Chiaro, no? 

11 test misura iniziai mente la quan- 
tità di "non conoscenza" che Ll À" ha 
di “3" basandosi sulla lontananza 
della previsione dalleffcttiva rispo- 
sta di l B' (le risposte sono graduate, 
ricordate?). Questa è indicata nel 
programma come variabile RO (Ri- 
sultato Ottenuto). Tale valore assolu- 
to viene quindi trasformato in per- 
centuale, cd infine da percentuale di 
“non conoscenza” viene trasformato 
in percentuale di "conoscenza” (va- 
riabile PER). 

Questo è. Finalmente, il valore che 
verrà visualizzato alla fine delle vo- 
stre fatiche. 


Disponendo della stampante sarà 
possibile selezionare Y apposita op- 
zione che, oltre a mostrare i risultati, 
riporta tutte le domande corredate 

delie risposte fomite da entrambi i 
partecipanti in modo che vi possa es- 
sere uno scambio di idee ed un con- 
fronto: è proprio questo lo scopo cd il 
pregio del programma. 

Un breve commento 

Come già ricordato , i l programma è 
troppo lungo (63 blocchi = 16 K circa) 
per esser pubblicato sulla rivista ed è 
questo l 'unico motivo per cui è riportato 
solo su Directory, il dischetto che mensil- 
mente la Systems editoriale offre per 
corrispondenza , 

Va tuttavìa ricordato che ; da un punto 
di vista delia programmazione, sono 
possibili ottimizzazioni notevoli, soprat- 


tutto se si decide di ricorrere alle sempli- 
ficazioni proposte nell'inserto contenuto 
nel N 40 di CC.C. 

Il pregio dei programma, comunque, è 
quello di dimostrare, ancora una volta, 
la notevole importanza che Un formati- 
va può rivestire anche nel quotidiano. 

L 'autore del programma svolge, infat- 
ti, il ruolo di operatore sociale in una co- 
munità per il recupero dei tossicodipen- 
denti, attività certamente delicata e diffi- 
cile per chiunque. 

E ' con vero piacere ; quindi che dedi- 
chiamo spazio alla recensione sul lavo- 
ro svolto, ricordando che sarebbe oppor- 
tuno, come sottolineato dallo stesso au- 
tore , ; uno scambio dì esperienze e dì pro- 
grammi idonei tra coloro che, da vicino , 
vivono esperienze analoghe , 

À.d,S. 



VENDITA PER CORRISPONDENZA 


ACCESSORI Wm 

PER COMPUTER 

HOME E PERSONAL COMPUTER 


NOVITÀ 


Duplicatore cassette Art, CD 102 L 

Copia con un regislratore 

normale Per c64 cl2S v;c20 

Copiatore programmi Art. CD 103 L, 

Cnp'a ccn due régiStrét&ri 

Commodore; P^f q 64 vii; 20 gl 23 

Intarlacela radio Art. CD 104 L 

Collsg^la la ràd:nal (.-o.mp 1 . 1 L 0 r. Per 
fi64 c 1 28 a viu2Q 

Kit allineamento registratori Are. CD 106 L 
c64 ci 28 vie 20 

Alimentatore Ari CD 106 L, 

per cG4 e \nc20 

Batteria tampone Ari, CD 107 L 

con batterie ripari cab il f Alimenta 

lt c64 o vie 20 in fiS&tìITza d: fio nenia par 30 


Penna ottica grafica Art- CD 1 56 L 3B.0DÙ 

per c54- (sùft su naslra) 

Cuffia per Commodore ArtCDISOL 19.000 

per vic20 dS c.54 d 28 

Copri tasti era in plexiglas^ Art CD 750 L, 13 . 000 

per c$4 ci 5 vic2Q 

Vaschétta floppy ir plexiglas Art CD 7 20 L, 30.000 

(il 40 pi con chiave] 

Vaschétta floppy In plcxigla ss Art CD 780 L. 37.000 

(* 90 pi., con cfnavej 

Kit pulizìa testine regi stratoré Art CD 81 5 L 13.50D 

Kit pulizìa disk drive Art CD 8,20 L, 20.000 

Kit pulita tastiera ArtGDSSGL. 16,500 

fùraLùre dlik in plastica ÀrLCD 840 L. 10,000 

Spoeti dpi piu* Kit Art CD900L. 68,000 

Vdngiz^ l floppy di g^ca 20 volle 
Per c64 

E proni 2764 ArLCD950 L, 8,000 

Eprnm 27128 Art CD 952 L, 12,000 

Ada tta t ere J oysttt k per c 1 $ A ri CD 2 25 L. 10,500 

Adatta Ipr e reg isti-atpre per 0 1 6 Art CD 228 L, 19,500 
Nastra inchiostrato pér MT&O Art. CD 61 0L 14,000 

Nastro inchiostrato per Art CD 51 4L, 13,000 

Commodore MPS 301 

Nastro inchiostrato per ArtCD6l5L, 15,000 

Commodore MPS 302 

Nastro inchiostrato por ArtGD£l&L, TB.OOO 

Commodore MPS 803 

Pacco caria lettura facilitata ArLCD 830 L, 13.500 

24"*n” 500 togli 

Supporti? stampa nté in ArLCD660L. 45,000 

plexiglas^ "fumé" normale 

SCONTI AI SIGNORI RIVENDITORI 
PREZ2I IVA COMPRESA. NON Si 
ACCETTANO ORDINI INFERIORI 
A L. 30,000 


Programmatore dì Eprom Ari. CD 925 L. 160,000 

per c64 

Cavo Centro ftìcs Amiga Ari. CD 112 L, 38,000 

O-M-A, su cartridge per c64 Ari. CD 1 30 L. 60.000 

Trasferisce : soft protetto e 
TANTE altre uhi iti. 

Fraej franto per g84 Ari CD 132 L 55.000 

^protettore pi programmi su 
nastro e di^GO 

Sprotec/64 (isE-pip} Per Ari, CD 910 L, 8G.PÒ0 

fiprùteggtìre i pmgr.iry.rns cd f! c34 

D igltal i zzatore àif di i a p pr c64 Art. C D tì 1 5 L . 88.0 0 0 

trasforma te voci ni segnali digitali. 

Soft su disco, 

Spééd contro Iter per c64 Art, CD 920 L. 35.000 

Cartuccia per ottenere l'effetto 
moviola. 

Cartridgé di programmazione A-v CD 930 L, 50,000 

E pio ni per iì CD 925, 

Evita il caricamento dei sefl dal 
disco. 

Modem 300 baud per c64 Ari CD SQ5 L. 158.000 

MOdem V2t V23 seriale ow Ari PC 375 L. 380.000 

PCXT 

Commutatore antenna Art CD 1 08 L. 9,500 

tv/computer 

Tasto reset per c64 vig20 Art, CD 109L. 5,500 

Turbo Dos Ari. CD 115 L. 35,000 

Veloci; £EI il dnv6 di g^ct 6 volte. 

Per Commodore 84 

Penna ottica grafica Ari CD 1 21 L, 38,000 

p& u64 fsoft su di suo) 


IN CONTRASSEGNO 


PAGHERÒ 

, : I 

. .li ... 


POSTINO 


orsa? 


PJU SPESE POSTALI 


P ERO RD [ Nj_T E L_ 0£22/661 471 -6B1 647 


Compilate, ritagliate e spedite in 
busta chiusa, regolarmente affrancata a 


S.n.C.-42017 NOVELLAR* (R.E.' ‘Via B. C«! im, A - 1 eH. 052 2/ 66 154 7 






DIDATTICA 


Sotto il segno 
del trinomio 


Un’applicazione 
matematica di 
indubbia utilità per gli 
studenti delle scuole 
superiori 


di Armando Sforai 


I I trinomio di secondo grado è* no- 
toriamente, un'espressione algebrica 
costituita da tre monomi ordinati, 
nella sua forma generale (detta an- 
che canonica) secondo le potenze de- 
crescenti di una variabile. 

Dì solito ìa forma tipica con la qua- 
le si presenta un trinomio è la 
seguente: 

ax t2+bx-K 

In taluni casi la torma può essere 
incompleta, essendo la costante "c" 
(e/o *V nulla), ma non può mai ri- 
sultare a=0 altrimenti non si paria 
più di trinomio di secondo grado. 

Le lettere a, b* c che compaiono nel- 
l'espressione, denotano numeri reali 
o espressioni algebriche di valore de- 
terminato e noto, mentre la lettera x 
rappresenta la variabile. Questa può. 
di volta in volta, assumere diversi va- 
lori in corrispondenza dei quali il tri- 
nomio ' reagisce' diventando positi- 
vo, negativo o annullandosi. In que- 
st'ultimo caso ì valori dell'incògnita 
costituiscono le soluzioni o radici 
dei Leq nazione che si ottiene egua- 
gliando a zero il trinomio. 

Dette radici sono tante quante ne 
indica il grado del polinomio (nel 
nostro caso due), anche se non è det- 
to che siano sempre reali e distìnte. 

Se quindi volessimo studiare l'an- 
damento del segno del nostro trino- 
mio, la prima cosa che potrebbe ve- 
nirci in mente di fare sarebbe quella 


di attribuire alla variabile x un nu- 
mero abbastanza ampio di valori c 
registrare ogni volta il risultato otte- 
nuto con lo scopo di disegnare un 
grafico del comportamento del segno. 

Tutto questo lavoro, in effetti, può 
essere evitato ricorrendo al calcolo 
del discriminante del trinomio stesso 
(delta: b t 2-4ae), 

Infatti, conosciuto Delta, si posso- 
no presentare tre casi: 

Delta maggiore di zero. 

Le radici sono reali e distinte. Sì 


può dimostrare che il trinomio assu- 
me segno uguale a quello del suo pri- 
mo coefficiente "a", per valori esterni 
alLintervallo delle radici, cioè per x 
minore dì xl e per x maggiore di x2 
(se, ovviamente, xl risulta minore 
dì x2). 

Viceversa il segno del trinomio ri- 
sulta opposto a quello del coefficien- 
te ‘V\ per valori compresi nell'inter- 
vallo delle due radici. Ricordiamo 
che per radice sì intende quel valore 
dì x secondo cut il trinomio si 
annulla. 



Commodore Computer Cfub - 93 





DIDATTICA 


Delta eguale a zero. 

Le radici sono reali ma coincidenti; 
x\=x2. Il trinomio, in questo caso, 
assume sempre il segno del suo pri- 
mo coefficiente tranne che in corri- 
spondenza di xL per cui esso si 
annulla. 

Delta minore di zero. 

Le radici non esistono più nel cam- 
po reale. Il trinomio assume sempre 
il segno di l a” e non si annulla 
mai. 

Con le regolette appena esaminate 
è abbastanza agevole studiare il se- 
gno di un trinomio, discutere dise- 
quazioni c sistemi di disequazioni, 
pitF se con la limitazione del se- 
condo grado. 

Tuttavia il computer può renderci 
la vita più facile, in quanto può essere 
luì stesso che, opportunamente pro- 
grammato, compie l’analisi e. maga- 
ri, la visualizzazione semigrafica del 
risultato. Questo è proprio lo scopo 
per cui è stato scritto il programma 
che presentiamo. 

Il programma 

Dalla linea 1 IO alla linea 180 si ac- 
cettano: valori dei coefficienti dei tri- 
nomi da studiare, si calcolano tutti i 
Delta e le radici. 

Dalla lìnea 200 alia linea 290 le ra- 
dici vengono ordinate per poterle 
Stampare correttamente sui grafico. 

Infine dalla linea 310 alla lìnea 470 
è contenuta la routine di stampa dei 
grafico, Alla linea 310 si fanno fre- 
quenti richiami ad un sottopro- 
gram m ma che è compreso tra le lìnee 
540 e 610. 

Tale sub routine è necessaria per 
trasformare una eventuale radice de- 
cimale in un numero frazionario. In- 
fatti, osservando gli esercizi a ri di ma- 
tematica, noteremo che invece dì in- 
dicare le soluzioni in forma decima- 
le. essi ricorrono alle notazioni fra- 
zionarie, radicali o esponenziali dei 
numeri, oltre che a quelle intere, e ciò 
per rendere più chiara e trattabile la 
quantità numerica stessa. 

Digitato attentamente il listato, e 
dato il RUN, si indicherà il numero 
dei trinomi da analizzare (piu di uno 


nel caso, ad esempio, di sistemi di di- 
sequazioni). Successivamente digite- 
remo i coefficienti dei trinomi nel- 
l ordine richiesto (a, b, c). 

Se il trinomio non sì presentasse 
nella sua forma compieta, se manca- 
no, cioè, il coefficiente "b" o la co- 
stante V7 è necessario inserire uno 0 
al loro posto. 

Atteso il tempo necessario per l’eia- 
borazione dei dati (il BASIC è un lin- 
guaggio di bassa cilindrata quanto a 
velocità), sullo schermo apparirà il 
grafico dell’andamento dei segni, 
pronto per essere valutato. 


Gli esempi 

A questo punto è bene prendere iti 
considerazione alcuni esempi. Sia 
dato il trinomio ì cui coefficienti a, b, 
c valgono, rispettivamente: 


-4, 37, -9 


Se digitiamo tali valori, alla richie- 
sta del computer, otterremo il grafico 
di figura, da cui risulta che il trino- 
mio in questione assume segno nega- 
tivo (lìnea tratteggiata) per valori di x 
inferiori a 1/4, in cor rispondenza del 
quale l’espressione si annulla (ecco 
la ragione della presenza dello zero). 

Esempio 1: 

Cy = " L txta + 37x-33 


1/4 9 


1 I 

-0 “S 


Dunque la prima radice del trino- 
mio vale 1/4. L’altra è 9 e tra questi 
due valori il trinomio mantiene il se- 
gno positivo (lìnea continua). Il se- 
gno tornerà ad essere negativo per 
valori di x superiori a 9. Come si ve- 
de. il computer inette a disposizione 
un comodo mezzo per conoscere il 
segno, le radici e, indirettamente, il 
Delta del trinomio, che in questo ca- 
so è positivo perchè le radici appaio- 
no reali e distinte. 


Esempio 2 

Nel trinomio qui analizzato, i valo- 
ri di a, b, c sono: 

2, 16, 32 

il grafico è quello di figura: 

Esempio 9: 
Cy“ExTc3+lSx+3£3 


-4 


l 

0 


Stavolta il grafico che appare infor- 
ma che il nostro trinomio mantiene 
sempre un segno positivo per qua- 
lunque valore assegnato ad x, tranne 
che per x = 4, per il quale si ha 
fan nuli amento. 

Ci troviamo, dunque, di fronte ad 
un’espressione in cui Delta è uguale 
a zero e le radici sono reali e coinci- 
denti (valgono, cioè, entrambe -4). 

Esempio 3 

Consideriamo adesso una nuova e- 
sprcssione algebrica in cui valori di 
a. b, c, sono: 

5, 8, 4, 

Inserendoli nel computer otterre- 
mo il grafico di figura: 

Esempio 3; 

C y “GxTB+Gx+H ) 

0 


1 


Questo grafico, diverso dai prece- 
denti, indica che il trinomio in ge- 
stione è sempre positivo, per qualun- 
que valore di xe non si annulla mai 
(infatti manca lo 0 sulla linea del se- 
gno), Quello zero posto in alto al 
centro, sulla linea delle radici, ha un 
valore puramente simbolico e serve, 
cioè, solo a mostrare che non esisto- 
no valori negativi o positivi da attri- 
buire all’incognita tali che annullino 

•s- - 

il trinomio. E’ questo il caso del Delta 
negativo. 


94 - Commodore Computer Club 


DIDATTICA 


Esempio 4 

Analizziamo, ora, la disequazione 
frazionaria della figura che segue: 

Esempio 4: 


xT2“4x+4 

>0 

3xt2‘5x+2 


è/3 1 è 


\ 1 1 

— 0 

[ 1 E 

0 ET 

Nonostante l’apparenza, questa 
frazione è semplicemente formata da 
due trinomi di secondo grado i quali., 
per soddisfare la disequazione (e fare 
in modo che tutta fespressione sia 
positiva) devono assumere entrambi 
segno uguale (entrambi positivi o en- 
trambi negativi). 

Vediamo, dunque, in quale ambito 
la disequazione sarà soddisfatta. 

(1) a. b, e : 1, - 4 , 4 

(2) a, b, e : 3, -5, 2 

Il grafico che apparirà sullo scher- 
mo sarà quello appena esaminato 
in figura. 

Osservandolo bene si evince che la 
disequazione sarà soddisfatta per x 
minore di 2/3 c per x maggiore di 1 
(entrambe le linee positive), con x di- 
verso da 2 perchè in quel punto, an- 
nullandosi il trinomio numeratore, 
la frazione algebrica varrà zero. 

Esempio 5 

Consideriamo, in ultimo, un siste- 
ma di disequazioni come quello 
che segue: 

Esempio 5: 

l x?S- 4x >0 
È 2xT2 +Sx -7 >0 
| xt2 “Sx >0 

I coefficienti da digitare, questa vol- 
ta, saranno i seguenti: 


(1) a, b. c : \ t -4, 0 

(2) a, b, c : 2, 5, -7 

(3) a, b, c : L -6. 0 

Il sistema considerato, avendo po- 
sto tutte le sue disequazioni positive, 
sarà soddisfatto per valori di x mino- 
ri di -7/2 e maggiori di 6, perchè solo 
il quelle zone i tre trinomi assumono 
contemporaneamente il segno po- 
sitivo. 

TI lettore, a questo punto, dovrebbe 
essere in grado di utilizzare il pro- 
gramma risolvendo i numerosi eser- 
cizi riportati sui libri di testo di 
matematica. 


scheda tecnica 


Software didattico per applicazioni 
matematiche. 

Idoneo pei computer C/64, C/16, 
Plus/4, C/l 28, Vle-20. 

Consigliato agli studenti delle scuole 
superiori. 

Anche il programma pubblicato iti 
queste pagine è contenuto nel disco 
"Directory 1 ’ di questo mese. 


10 REM * SEGNO DEL TRINOMIO * 
20 REM * PER QUALSIASI COMMOD 
ORE 

30 REM * BY ARMANDO SFORZI 19 
87 

40 REM * SOZZANO CLU) 

50 ; 

90 DIM NR , NT , A® 

100 PRI NT ”€ OLEARI * URLISI SEON 

0 DEL TRINOMIO DI 2 ’ GRADO!! 
RU0FF3 *” :PRINT 

110 INPUT "NUMERO TRINOMI NT: D 
IM TCNT,4) , S$C4) , R( 10) 

120 5$C0)=CHR$C36) : S$C2)-CHR$C4 
5 ) : S$ C 4 ) “CHRSC 96 ) 

130 PRINTTOEFFICIENTI : ” : FOR J= 

1 IO NT: PRINT"C ”J”) " ; 

140 INPUT "A, B, C”; A, B, C: IF A-0 
THEN PRINT”ERRORE’' : GOTO 140 
150 TCJ, 1)=B*B-4*A*C: TC J, 23-A: I 
F TC J, 1X0 THEN 180 
160 TCJ, 33-C-B+SQRCTCJ, 1)3 3/C2* 
A) : TC J, 43-C-B-5QRCTCJ, 1 3)3/ 
C2*A) 

170 IF TC J,3)>T( J, 4) THEN A-TCJ 
, 3) : TC J , 3 3=T CJ,4):TCJ,4)=A 
180 NEXT ’ 

190 REM » ORDINA LE RADICI * 
200 FOR J=1 TO NT : IF TCJ.1K0 T 
HEN 230 

210 NR=NR+1:RCNR)-TCJ,33: IF TCJ 
,13=0 THEN 230 
220 NR=NR+1 : RCNR)=TC J, 4) 

230 NEXT 


Commodore Computer Club - 95 





DIDATTICA 


240 


250 

560 

570 

EB0 

590 

300 

310 


350 


330 


FOR J = 1 IO NR~1 : A=RC J3 : FOR 
JJ=J TD NR : I F A>RCJJ) THEN 
B=A : A=RC JJ3 : RC JJ3 = B 
NEXT :R(J3=A:NEXT; 1F NR=1 TH 
EN 310 

REFI * ELIMINA LE RADICI UG 
UAL I * 

A= 1 : FOR J=2 TD NR : I F RCJ3=R 
CJ-1) THEN 590 
A-A+l : RCA3=RC J3 
NEXT : NR=A 

REM * RAPPRESENTAZIONE GRA 
FICA * 

PRINT ”CCLEAR] C 3 DGWN3”:C=1N 
TC35/CNR+133 : FDR K=1 TO NR : 
A=R< K 3 : GOSLJB 540 
PRINT TAOCC*K-l)A$; :NEXT:PR 
INT 

PRINT TABC 1 3 ; : FOR J=1 TO 30 
; PRINTCHR$C 1E5) : ; NEXT : PRINT 


>7 1 J44;a53**4 *»s. 
j*. . * . , 1345™*1S4D34*3Ì5? 

X. 

/%** .£ 4 a 3 Ì& 4 ?ÌÌ 2 * 4 ? = ^-'j 

A**»**.** 

A»*** 

1 

...*.* **éÉi;^Mit» 4 fff!t» 

, .***1 \ !;ìj4UfÌ!4iE^4l » 



. .**.** i ì* # *a 4 s 4 * *4 «sii s ; ; * t 
. ,„* . * . f4 4”3344 3 34 4«! fi» 3. i » . 
h + *,*,l445S5'ift4 4443J3443E.,*.y 
*..** 3 msS 9 ;;;*o» 21 u. — ./ 

. .1 l £ 34 J iù 4 Ì3 4 4 * 4 3 ì E » * ■ » • * f/ 

UlMÌ15ì1i!4SUit4i X 

2 4 * lia 54^^55^42 w + * * 

■ 43$SÌ6355S43356*4J-i*+y^ 

'P' 553**4*34^4 J 4Ì3 l nf 
\^*4! r i)^l,!4S545 ? ]i / 

Vlll< ... I 3*i!iO/ 

\ I34t!i 4 ]/ 

\ J 

\» 1 É . *34^1144 Z / 

V - - r i4 *50*54 / 

\ ** 

\. . 34t5fi5S3 / 

LZ*ÌMÌÌ*i/ 
h .1435634 3/ 

hi i 
/4Ì 3*3?4/ 

A 55 *55**^ 




'sorrwtìUE, 


340 FOR J“1 TO NT*2 : FOR K=1 TO 
NR: PRINT TABCC*K)CHR$C903 ; : 
NEXT : PRINT: NEXT 
350 FR INT” [HOME] CS DOWN]" 

3B0 FOR K-l TO NT : PRINT TABC13; 
370 IF TCK , 1 ]<0 THEN FOR J=1 TO 
38 : PRI NTSSBC 1- 5GNCTCK ,E)I) 

; : NEXT: GOTO 470 
380 IF TCK, 1 3 > 0 THEN 450 
390 A=1:B=1 

400 GOSUB 550: IF RCA3<>TCK,33 T 
HEN A=A+1 : GOTO 400 
410 PRINTCHRSC 1573 ”0” ; : FOg J-PO 
SC03 TD 38 : PRINTSSC 1“ SGNCT 
C K , 5 3 3 ) ; : NEXT: GOTO 470 
450 A= 1 : B= 1 

430 GOSUB 550: IF RCA3<>TCK, 33 T 
HEN A“A + 1 ; GOTO 430 
440 PR INTCHR3>< 157 3 ”0” ; :A=A+1:B= 
3 

450 GOSUB 550: IF R(A3<>TCK,43 T 
HEN A=A+1 : GOTO 450 
460 FR INTCHRSC 1573 ”0” ; : FOR J-PO 
SC03 TD 38: PRINTSffiCl- SGNCT 
CK. 23 3 3 ; : NEXT 

470 PRINT: PRINT: NEXTK : FRI NT” C HO 
ME11 . C RUS1ANCORACRUOFF] 5. 
C RUS1FINECRUOFF] ” 

4B0 GET AS : I F AS=”” THEN 4B0 
490 IF A$=” 1 ” THEN CLR : GDTO 90 
500 IF A3>“’ ! 2" THEN PR INT”CCLEAR 
] ” : END 

610 GOTO 480 

550 FOR J=1 TO C:PRINTS$CB- SGN 
CTCK.E333; : NEXT : RETURN 
530. REM * TRASFORMA NUMERO DEC 
IMALE IN FRAZIONARIO * 

540 A$=” ” : B-0 : IF A<0 THEN B=1 
550 FOR J=1 TO 15: FOR JJ=E TO 1 
5 : I F ABSC J/JJ-ABSCA3 )< .01 T 
HEN 580 

560. NEXTJJ, J: IF A$= ” ” THEN A$=M 
IDSCSTRSCA3 ,1,53 
570 RETURN 

5B0 A$=STR$CJ3+”/"+RIGHT$CSTR$C 
JJ 3 , 1-CJJ>933 

590 IF J/JJ=INTC J/JJ3 THEN A$=S 
TRSC J/JJ3 

B00 IF B THEN A$=”- "+MID$C A$ , 53 
610 J= 1 5 : J J=J : GOTO 5G0 


470 



96 ■ Commodore Computer Club 






La voce HI 
Raffaello 
Oroscopo 
Computer^ Music 
Gestione familiare 
Banca dati 

Dichiarazione dei redditi (740/S) 

Matematica finanziaria 
Analisi di bilancio 

Arredare (richiede linguaggio Simon ' 5 Basic) 


L. 12000 
L. 10000 
LI 2000 
L. 12000 
L. 12000 
LI 2000 
L, 16000 
L. 20000 
L. 20000 
L. 10000 







Software su disco 


Ms-Dcs & Gw- Basic 1,25000 

Ms-Dos & Gw- Basse [con prova d acquisto 
cassetta) LI 5000 

La voce Ut L, 1200C 

Raffaello Li 0000 

Oroscopo L. 12000 

Computer- Music LI 2000 

Gestione familiare L.,12000 

Banca dati L, 12000 

Dichiarazione del redditi (740/S) L. 24000 

Matematica finanziaria 1,20000 

Analisi di bilancio L,2QOG0 

Arredare (richiede linguaggio Simon’s Basic) L. 20000 

Graphic Expander C/12B in modo BO colonne L. 27000 

Linguaggio macchina + Routine grafiche L, 12000 

Offerta speciale fascicoli “Commodore " 

13 . 14, 15 e 

" ^Personal Computer" N.1 h 2 < 3 L, 25000 

Offerta speciale fascicoli 

“Personal Computer” N,2 h 3, 5 L- 12000 

Offerta speciale fascicoli “Commodore" 

13, 14. 15 e 

“Personal Computer" 1 M ,1, 2, 3. 5 L. 2 7000 

Offerta “ Commodore speciale L,M " + dischetto L. 1 6000 







64 programmi per il Commodore 64 

I miei amici C/16 e Plus/4 

SS rate gie vincenti per Commodore 64 
62 programmi par Vie 20, C/16 e Plus/ 4 
Utilities e giochi didattici 
Tutti i segreti dello Spectrum 
Simulazioni e test per la didattica 
Impara giocando il Basic dello Spectrum 
Micro Pascal per Commodore 64/128 
Dal registratore al drive del C/64 
Ada 

II linguaggio Pascal 


Directory 

Ciascun dischetto 

Arretrati 


L. 4800 
L 7000 
L. 5800 
L 6500 
L 6500 
«L. 7000 
L. 7000 
L 7000 
L. 7000 
L 7000 
L SOOO 
L 5000 


Ciascun numero arretrato di Commodoro 

Computer Club L 5000 

Ciascun numero arretrato di Personal Computer L. 5000 

Ciascun numero arretrato di VR Videoregistrare L. 5000 


Le spese di imbatto e spedizione sono a carico delta Systems 
se ciascun ordine é pari ad aimeno L50000 (di listino). 

Gii abbonati hanno diritto alio sconto dei 10% e atta spedizione 
gratuita se ta somma totale raggiunge la cifra di 1.50000 
(di iistino). 

Oltre aita spedizione gratuita, viene praticato uno sconto del 
10% (per gli abbonati è del 20%) se la cifra raggiunta per ciascun 
ordine raggiunge le L. WOOOO (di listino). 


Libri 


L. 12000 


Sconti e agevolazioni 




Per un ottimale utilizzo dei software "Matematica finanziaria" è opportu- 
na fa lettura degli artìcoli relativi pubblicati sui N. 13, 14, 15 delia rivista 
“Commodore" e sur N, l 2 e 3 delia Rivista Personal Computer. 

Per un ottimale utilizzo dei software " Analisi di Bilancio" è opportuna la 
lettura degii artìcoli retativi pubblicali sui N.2. 3, 5 della Rivista 
Personal Computer. 

Per un ottimale utilizzo del software “linguaggio Macchina e Routine 
grafiche per C/64 * I 11 e opportuna la lettura dei fascìcolo " Commodore 
Speciale" appositamente dedicato. 

Coloro che desiderano procurarsi i prodotti delia Systems Editoriale 
devono inviare , oltre alia cifra risultante dalia somma dei singoli prodotti, 
la cifra di L.3000 per spese di imballo e spedizione, oppure L.600Q se si 
preferisce la spedizione per mezzo raccomandata . 


L. 40000 
L40GGQ 


SS computer^ p era0 nal Computer L6500 0 

Commodore Computer uu L .45000 

a <«■”"* 

o(( gobona menti non pri M ***** ^ ^ 

N - 6 ' ; Teorie % Ì3«W di cui SOpfa - 

nsre 9 1 .... inviare materiate contrassegno. 

Unn è assolute mente possale tnviare m 

Hon 6 35 , c/c p 0S | a |e indirizzando a: 

armale moduto dt C/c Le3lir 
Compilai uo normale 

C/C postale N. 37952207 

Systems Editoriale 

Via /e Famagosta, fé 

9014 2 Milano _ 

' t suì r& tro del modulo (nello 

J^Sg£SBSS*= 

nativo completo d sct>e da. debitamen- 

SSSS«S« 5 P 5ar -- - 

effettuato* 

Chi volesse \ 

ma richiesta r 







Per ordinare i fascicoli mancanti alia tua collezione di Commodore Computer Club utilizza l'apposita scheda in fondo alla rivista. 










Tv. 

K J sg-j£ Jpj&J ì 

fjkgHfa 


7 


,',o 9 ^ 


Ah 



sr.ra «y&Sr^S* 

r , £s£& 







Principi di multi 

programmazione 


Time sharing , mutti-taskìng, interna pt: 
tanti nomi per indicare un concetto che, 
a pensarci bene , conosciamo 

benissimo. 


dì Alessandro de Si mone 


Commodore Computer Club - i 


Ab ovo 


Molto spesso, iniziando a studiare un nuovo argomento, si è 
convinti di affrontare temi nuovi, difficili e, in ogni caso, 
impegnativi. 

Si dimentica, invece, che qualsiasi trattazione deve necessa- 
riamente avere una base logica, semplice e sicuramente com- 
prensibile, proprio perchè è compiuta dall'uomo. 

Provate a considerare una qualsiasi invenzione, come ad e- 
sempìo l’automobile: i sedili hanno forma anatomica (ì mar- 
ziani, forse, li fabbricherebbero diversamente), il tetto è pre- 
sente per ripararci dalle intemperie, il parabrezza dal vento, le 
serrature dagli... indesiderati. 

Anche il calcolatore, naturalmente, non sfugge alla regola e- 
1 emonia re che gli impone di avere l'orma e funzioni fatte “a mi- 
sura d’uomo”: la tastiera ha senso proprio perchè sappiamo 
muovere le dita con una certa rapidità e disinvoltura (un caval- 
lo avrebbe certamente inventato qualcosa di diverso), lo scher- 
mo richiama la struttura di un qualsiasi testo scritto, i colori 
del video si rendono necessari per evitare all’uomo, sempre luì, 
di ritrovarsi in un ‘"ambiente” privo di variazioni cromatiche 
con le quali è in costante contatto. 

E cosi, di seguito, possiamo pensare al telefono, all'ascenso- 
re. all’aereo, agli alberghi e ad un qualsiasi altro oggetto (o ser- 
vizio) inventato dall’uomo. 

Ma se finora abbiamo considerato gli oggetti (hardware) non 
possiamo trascurare le idee (software) che. anch’esse, non 
sfuggono alla complessa struttura mentale dell'uomo che le ha 
generate. 

L’uomo 

Vi diamo cinque secondi di tempo per dire che cosa state fa- 
cendo in questo momento; è probabile che vi limitiate a ri- 
spondere "sto leggendo” ritenendo, in perfetta buona fede, di 
aver esaurito l’argomento, con tale semplice risposta. 

Vediamo in dettaglio, al contrario, che cosa state facendo 
realmente: 

• Le vostre mani stanno reggendo il giornale con una angola- 
zione tale da consentire alla luce disponibile di illuminare le 
pagine con la giusta intensità. 


Il - Commodore Computer Club 




Commodore Computer Club - IH 


• Gli occhi sumno rapidamente scorrendo i caratteri di cia- 
scun rigo seguendo una procedura rigorosa (da sinistra a de- 
stra e dall'alto in basso). 

• Il vostro corpo è posizionato in perfetto equilibrio (anche se 
siete ignobilmente stravaccati in poltrona) e tutti i muscoli del 
vostro corpo sono impegnati, chi più chi meno, a tenerlo in tale 
equilibrio. 

• 11 vostro cuore sta pulsando alla giusta velocità per distribui- 
re il sangue lungo arterie, vene, venuzze e canalicoli vari. 

• I vostri polmoni stanno respirando per immettere ossigeno 
nel corpo ed estrarne anidride carbonica. 

• ...e potremmo smetterla qui, prima di esaminare le imbaraz- 
zanti operazioni in corso verso il sud dei vostro corpo. 


Il corpo umano, insomma, è una macchina incredibilmente 
potente e. fortuna per noi, costantemente attiva neOespleta- 
mento di migliaia di operazioni da svolgere in contempo ranca 
e. in moltissimi casi, in perfetto sincronismo. 

E se, con un po' di fantasia, riesaminiamo l’automobile di 
prima con analogo spirito di osservazione, non possiamo fare 
a meno di rilevare che, in uno stesso istante, lo spinterogeno 
compie una determinata funzione, alcune valvole sono aperte, 
ed altre provvidenzialmente chiuse, un ammortizzatore evita 
di ripercuotere sui passeggeri gli effetti di un fosso, la cinghia 
della ventola fa in modo di raffreddare il liquido che. a sua vol- 
ta, è spinto nel circuito da un'altra valvola mossa dall’albero 
motore che fa girare l'alberino dello spinterogeno... e così 
via. 

Il concetto di più funzioni svolte contemporaneamente, 
quindi, non è affatto nuovo per noi: solo che. magari, non ci è 
mai capitato, finora, di rifletterci sufficientemente. 


Dal cervello al micro 

1! cervello umano, come è noto, è ancora piuttosto misterioso 
e le funzioni che svolge, addirittura, sono quasi tabù. Nessuno 
è in grado di spiegare certi fenomeni, atteggiamenti e compor- 
tamenti umani. 

L'uomo è una macchina rigorosamente complessa, difficile 
da esplorare ed influenzabile, per giunta, da fattori clic, a loro 
volta, possono variare il "percorso" abituale dd flusso del 
pensiero. 


IV - Commodore Computer Club 



Non staremo qui a ricordare il mistero della parapsicologia, 
dcH'autosuggcstìone o dei fenomeni psicosomatici. Nè. tanto- 
meno, tenteremo di spiegarci le presunte potenzialità degli 
astro-chiro-carto-manti che offrono le loro salatissime presta- 
zioni solo per per appuntamento e al di fuori, ovviamente, di 
verifiche fiscali. 

Vogliamo solo dire, invece, che una macchina complessa co- 
me il cervello umano può, alia luce delle moderne conoscenze, 
essere osservata "da lontano”, con attenzione e umiltà, tentan- 
do di intuirne i modi di funzionamento. 

Per spiegare uno stesso fenomeno umano o sociale, in som- 
ma. qualsiasi teoria può essere valida; altrettanto valida può 
essere, tuttavia, una teoria esattamente contraria. Ne è una ri- 
prova il proliferare, nel corso dei millenni, di numerose scuole 
filosofiche, credenze religiose, ideologie politiche ed ipotesi 
scientifiche che hanno tutte in comune, oltre al tentativo di e- 
scludersi reciprocamente, la ricerca della cosiddetta verità, fi- 
nalizzata, o meno, a scopi che si ritengono di importanza 
escatologica. 

*rt-- 

Pur non potendo intrattenerci a lungo sulla Verità, che qui in 
Systems possediamo tutti, ci limiteremo a considerare gli a- 
spettì che più interessano per meglio comprendere le applica- 
zioni ai computer in generale, e Commodore in particolare. 

L’impero dei sensi 


Si dice che abbiamo a disposizione cinque sensi (vista, udito, 
tatto, olfatto e gusto) ma sono in molti ad affermare che ne di- 
sponiamo in maggior numero. 

Se consideriamo l’udito, ad esempio, ci accorgiamo che que- 
sto c sempre attivo, in qualsiasi istante, anche durante il son- 
no; è questo, e non altri, il motivo per cui le sveglie, per funzio- 
nare, sono dotate di dispositivi sonori (bip-bip, radio, musicas- 
sette. eccetera). Se. nel tentativo di svegliare una persona, pro- 
vate ad accendere e spegnere la luce della stanza, è probabile 
che non ottcniate il risultato voluto; analogamente, se provate 
a diffondere un profumo, è piu probabile che il suo effetto pro- 
duca variazioni nel sogno in corso. Solo un pizzicotto ben as- 
sestato può avere l'effetto di una sveglia, ma le reazioni che si 
osservano nella maggior parte dei soggetti trattati in tal modo 
hanno finora consigliato i fabbricanti disveglie ad utilizzare il 
tradizionale senso dell’udito per interrompere il sonno. 


Commodore Computer Club - V 



Un calcolatore dispone anch'esso dei sensi; magari non sono 
cinque nè raggiungono i livelli di sofisticazione propri dell'uo- 
mo, ma, nel loro piccolo, possono esser considepati sufficiente- 
mente “sensìbili”. 

La tastiera è, perii computer, ciò che per noi c l’orecchio; i va- 
ri comandi da impartire, e le istruzioni che desideriamo siano 
eseguite, possono essere inviate tramite tastiera che, come è 
noto, dispone di un tasto vitale perla conferma; il tasto Return, 
che non a caso è, in genere, il tasto più grosso presente. 

Un computer, però, dispone anche di altre orecchie: pensate 
al modem, dal quale può ricevere informazioni, oppure al dri- 
ve, dal quale attinge dati; e considerate il nuovo strumento ri- 
voluzionario, il mouse, che le orecchie sembra averle per dav- 
vero, Altre orecchie sono la tavoletta grafica, la penna ottica, il 
joystick e tutti quegli strumenti che, insomma, possono “co- 
municare” al calcolatore un ordine, un'istruzione, una 
scelta. 


Ma la tecnologia moderna offrirà, tra brevissimo tempo, un 
vero “orecchio”, e intendiamo, con ciò. riferirci al comune mi- 


crofono. Tutti sanno che, anche oggi, è possibile digitalizzare 
un suono e, in .seguito, riascoltarlo per mezzo del computer; 
ma in un prossimo futuro saranno presenti sul mercato com- 
puter in grado di riconoscere la voce deU’utilizzatore e, ovvia- 
mente, di “capire” gli ordini da espletare. E tutto ciò non avver- 
rà fra chissà quanto tempo. Esistono di già calcolatori in grado 
di fare quanto descritto, ma si è ancora in fase sperimentale e 
le applicazioni, almeno per il momento, sono limitate. Uno dei 


problemi dei computer della quinta generazione, disponibili 
certamente entro la fine di questo secolo (che non è poi tanto 
lontana) è proprio la possibilità di comunicare a viva voce con 


una macchina. 


Il video, con un po' di fantasia, può esser considerata la “vo- 
ce” del compu ter. La visualizzazione di dati, di informazioni e 
di risultati di elaborazioni assolve certamente al compito di 
“dialogare” con lutilizzatore che, appunto, riceve una risposta 
ai suoi quesiti tramite video. 

In eftetti la "voce” dei primi calcolatori era rappresentata 
dalla stampante che. nei decenni passati, era lo strumento più 
economico per fornire i risultati delle elaborazioni. In seguito, 
però, grazie ai progressi della tecnologia, fu possibile adattare 
un’altra invenzione dell’uomo, la TV, alla visualizzazione dei 


dati; è facile immaginare il 


risparmio di carta che .seguì alla 


VI - Commodore Computer Club 



diffusione di questa nuova "voce” dei calcolatori; al giorno 
d'oggi, infatti, viene riportato su carta solo ciò che è assoluta- 
mente indispensabile. In un futuro, che speriamo prossimo, la 
carta risulterà superflua come supporto, sostituita da dischi 
magnetici in grado di visualizzare su schermi le informazioni 
desiderate; parecchi alberi, quindi, potranno non esser desti- 
nati alle cartiere grazie alla minor richiesta del mercato. Se la 
burocrazia italiana potesse fare a meno di carte e cartacce, po- 
tremmo disporre di un maggior numero di foreste e, magari, di 
una maggiore efficienza in alcuni servizi. Quando, fra pochi(?) 
anni la posta cartacea sarà sostituita (come accade nei paesi 
veramente industrializzati) da quella elettronica, ne ri- 
parleremo. 

La "voce” di un computer è rappresentata, oltre che da un vi- 
deo o da una stampante, anche dal plotter, in grado di disegna- 
re con vere e proprie penne, dal modem e dal drive (che assu- 
mono, quindi, la duplice funzione di orecchia e bocca). 

Recentemente una vera voce, digitalizzata opportunamente, 
è stata introdotta come strumento per risolvere il problema del 
colloquio. Chi possiede il C/64 sa benissimo che risulta straor- 
dinariamente semplice dotare il piccolo computer di un sinte- 
tizzatore vocale. Chi possiede l’Amiga, poi, può ricorrere fre- 
quentemente alla divertente, quanto fedelissima, riproduzio- 
ne di frasi sintetizzate. 

Per ciò che riguarda il gusto, a onor del vero, siamo ancora 
lontani dalle applicazioni pratiche, a meno che non vogliamo 

considerare i vari sensori oggi disponibili (analizzatori di so- 
stenze gassose, chimiche, radioattive eccetera) come percettori 
di odori. 

Per La simulazione del tatto, invece, non c’è che l'imbarazzo 
della scelta fra sensori elettromeccanici, sensori di pressione, 
di allungamenti ed altre diavolerie in grado di riconoscere la 
variazione, anche minima, di forma o configurazione di un 
oggetto. 

Ma come fa, un computer, a controllare i suoi sensi? 


1 controlli 

La "macchina” umana, per funzionare, ha bisogno di un di- 
rettore d’orchestra, il cervello, altamente affidabile e veloce. 
Consideriamo, ad esempio, che cosa accade quando compia- 


Commodore Computer Club - Vif 




mo un’operazione apparentemente banale, come il passeggia- 
re lungo una strada. 

In tale azione “dinamica" i controlli da effettuare sono incre- 


dibilmente numerosi e molti di essi, tra l’altro, devono essere e- 
seguiti in tempo reale. Per mantenere il corpo eretto, ad un cer- 
to gruppo di muscoli è affidato il compito di entrare in trazio- 
ne ed in compressione, molto rapidamente, affinchè il bari- 
centro del corpo risulti posizionato, istante per istante, all’in- 
terno di una particolare zona che garantisca l’equilibrio. Non 


solo, poi, tale controllo deve essere effettuato con precisione, 
ma, soprattutto, eventuali correzioni di “assetto" devono esse- 
re compiute immediatamente (in tempo, quindi, reale), per e- 
vilare di cadere rovinosamente sul marciapiedi stesso. 

In genere tale controllo, e conseguente modifica di assetto, 
avviene con sufficiente rapidità; altre volte, invece, i muscoli 
non rispondono prontamente agli stimoli, oppure gli stimoli 
che impongono il cambio di posizione non giungono in tem- 
po; è questo il motivo per cui qualche volta cadiamo per un 
passo falso, oppure inciampiamo in qualche ostacolo che non 
avevamo notato; ed c anche ciò che accade, purtroppo, agli au- 
tomobilisti che sì ostinano a guidare in stato di ebbrezza, che 
impedisce la prontezza di riflessi o, se preferite, la possibilità 
di agire in tempo reale. 

Naturalmente, nei corso della nostra passeggiata, non basta 
verificare costantemente la posizione del baricentro (che, co- 
me l’azione del respirare, è assolta in modo inconsapevole); bi- 
sogna effettuare altri controlli; considerare eventuali ostacoli 
ed evitarli (altra gente che cammina sullo stesso marciapiede, 
macchine parcheggiate selvaggiamente, ricordini di cani, ec- 
cetera); optare per eventuali variazioni di percorso (vetrine in- 
teressanti, incontri di conoscenti con cui fermarsi a chiacchie- 
rare. soste per riposarsi nel caso in cui trasportiamo pacchi pe- 


santi, e così via). 

A tutte queste funzioni, che vanno svolte in contemporanea, 
in sincronismo ed in tempo reale, provvede il cervello secondo 
una tecnica «he. in parte, è ancora sconosciuta. 

Analogamente un calcolatore deve esser strutturato in modo 
da espletare più compiti contemporaneamente, alcuni dei 
quali in sincronia con altri. 

Pensate, infatti, al vostro calcolatore nel momento in cui lo 
accendete: sembra che non accada nulla e che non sia com- 
piuta alcuna elaborazione; ii,,quyrsore lampeggia, è vero, ma 


Commodore Computer Ct uh - /X 



difficilmente qualcuno può essere indotto a definire ‘"elabora- 
zione'' quel semplice cambiamento di colore di un quadratino 
del video! 

Ma esaminiamo con maggiore attenzione che cosa, realmen- 
te, sta accadendo in un qualsiasi istante durante il quale il 
computer sembra che si limiti a far lampeggiare il cursore: 

Una particolare routine in linguaggio macchina sta esami- 
nando se non sia stato premuto un tasto; sapete benissimo, in- 
fatti, che se premete un tasto questo viene immediatamente vi- 
sualizzato sullo schermo c ciò dimostra, appunto, che cera 
"qualcuno" che si aspettava la pressione di un tasto da un mo- 
mento all’altro. 

Ma mentre qualcuno (o qualcosa) controlla contìnuamente 
la tastiera, qualcun altro (o qualche altra cosa) deve control la- 
re il pennello elettronico del video e imporre di illuminare un 
pixel, o meno, a seconda di come è richiesto in quei particolare 
momento; solo in questo modo, infatti, è possibile che un e- 
ventuale messaggio rimanga costantemente visualizzato sullo 
schermo. C'è. ovviamente, anche una routine che assegna un 
ben determinato colore ai pixel presenti sul video; e deve esser 
presente anche una routine che esamina l’eventuale variazio- 
ne dì stato relativo al connettore dei joystick. Stavamo per di- 
menticare la routine che aggiorna di contìnuo l'orologio inter- 
no e, nel caso del C/64, anche quella dell’orologio e della sve- 
glia gestibili in modo particolare; per non parlare del controllo 
dello stato degli sprite (se ve ne sono) e, se è il caso, del 
chip sonoro. 

E tutto ciò (insieme a molte altre cose ancora) avviene duran- 
te il semplice lampeggìo del cursore; l’avreste mai im- 
maginato? 

Ma se il microprocessore è uno solo, come è possibile che tut- 
te queste funzioni vengano eseguite contemporaneamente? 
Sappiamo benissimo, infatti, che se premiamo un tasto questo 
viene visualizzato immediatamente, magari durante la visua- 
lizzazione costante di altri caratteri (e sprite) eventualmente 
già presentì sullo schermo, mentre un nostro amico si diverte a 
maneggiare il joystick e. perchè no, mentre un suono continuo 
viene emesso grazie al precedente settaggio delle opportune 
poke del chip sonoro. 

Come fa il microprocessore, dunque, a fare contemporanea- 
mente tutte queste cose? E come potrà, a maggior ragione, con- 
trollare tutte le azioni ora viste quando gli verrà richiesto di far 


X - Commodore Computer Club 



girare un programma complesso, come un videogame in lin- 
guaggio macchina che richiede la gestione di grafica a colori 
in alta risoluzione, con controllo di due joy, con musica di sot- 
tofondo e seguendo una strategia di gioco rapida, costante- 
mente variabile ed incredibilmente complessa? 

La partizione del tempo 

Sicuramente avete sentito parlare di produttività e il modo di 
esprimere le unità di misura adoperate possono, in certi casi, 
lasciare perplessi. 

Considerando, ad esempio, la produttività dell’operaio giap- 
ponese addetto alla fabbricazione di automobili, si dice che 
questi, in media, produca 12 autovetture. 

Ciò non significa che al singolo operaio è affidato il compito 
di realizzare, per intero, una vettura completa. Sappiamo be- 
nissimo che in Giappone, come in Italia e in qualsiasi fabbrica 
di auto, vi sono operai specializzati nel montare le parti elettri- 
che, la carrozzeria, il motore, gli allestimenti interni e così via. 
Vi sono, cioè, operai, che, dalla mattina alla sera, non fanno al- 
tro che montare carburatori e, forse, non hanno la minima i- 
dea di come si installi un ammortizzatore; analogamente può 
capitare che l’operaio addetto alla sistemazione dei sedili non 
sappia nemmeno il numero dei cilindri del motore presente 
sulla stessa auto. 

Se, però, consideriamo che per fabbricare 12000 auto è neces- 
sario il lavoro organizzato di 1000 operai, possiamo far finta di 
ritenere che ogni operaio abbia realizzato 12 auto, pur se ciò 
non corrisponde, come abbiamo visto, alla realtà. Tuttavia il 
valore che ne risulta può essere utilissimo per effettuare con- 
fronti con la produttività di altri Paesi. 

Seguiremo, ora, un ragionamento che può sembrare l'esatto 
contrario di quanto affermato poco fa! Per realizzare tutte le 
funzioni richieste da un computer, non è necessario avere un 
micro per ciascuna funzione, ma è sufficiente installarvi un u- 
nico “eervellq” che ciclicamente, in brevissimi istanti successi- 
vi, compia numerose routine altrettanto brevi. 

In pratica, nell’arco di un periodo brevissimo (anche dell’or- 
dine di centesimi di secondo) il micro sovrintende al video; fi- 
stante successivo lo stesso micro aggiorna l’orologio: quello 
dopo forse lo dedica allo spostamento dello sprite; quindi 
provvede, nel l’istante successivo, a considerare eventuali mu- 


Commcdore Computer Club - XI 



XII - Commodore Computer Club 




tamenti avvenuti nel corso della scansione della tastiera; poi, 
magari, del joystick: e cosi via, di controllo iti controllo, di veri- 
fica in verifica, fino ad espletare l’ultimo comando. Subito do- 
po ricomincia daccapo, aH infinito. 

Si tratta, quindi, di eseguire migliaia di compiti, ma non tutti 
insieme, bensì frazionati nell'arco di tempo a disposizione, in 
modo tale che i mille compiti sembrano compiuti contempo- 
raneamente. Allo stesso modo, nella fabbrica di automobili 
prima considerata, sembra che ogni operaio produca un'auto 
e tale impressione, come abbiamo già detto, è utile per gli scopi 
prefissati. 


Quando noi giochiamo con un videogame, insomma, non ci 
interessa sapere se un particolare effetto grafico o sonoro c 
compiuto in più fasi successive, pur se molto ravvicinate fra lo- 
ro: in quel momento interessa giocare e divertirsi e non elucu- 
brare sulla tacnica adottata per la frammentazione dei 
compiti. 


La tecnica della partizione di tempo (time sharing) fu realiz- 
zata sfruttando la capacità di un microprocessore ad operare 
*id altissima velocità. Molti utenti, quindi, potevano lavorare 
contemporaneamente mediante altrettanti terminali collegati 
ad un unico calcolatore. Questo elaborava ciclicamente i vari 
programmi in modo tale che il singolo utente aveva l’impres- 
sione che il computer lavorasse solo per lui. 

Naturalmente vi sono dei limiti che non possono esser supe- 
rati, pena la riduzione drastica del tempo a disposizione di o- 
gni utilizzatore. 

Ricorreremo, ora. ad alcuni esempi pratici che rendano più 
chiaro il concetto di miultiprogrammazione pur disponendo di 
un piccolo computer e, per giunta, lavorando in Basic. 

Sorvoleremo, ovviamente, sulle differenze esistenti tra i nu- 
merosi termini (time sharing, multiprogrammazione, multi 
tasking) che. nella comune accezione, indicano procedure 
piuttosto diverse tra loro. 


1 programmi di esempio 

11 primo programma è incredibilmente semplice e banale e 
servirà solo per puntualizzare alcuni concetti già esposti in 
precedenza: 


Commodore Computer Club - XIII 



100 REM PRIMO PROGRAMMA 
110 : 

120 PRINT CHR$(14?):REM CANCELLA SCHERMO 
130 PRINT CHR$( 19) "SONO LE 0RE:‘T1$ 

140 GOTO 130: REM CHIUSURA CICLO 

Se date il Run vedrete che lo schermo sarà cancellato (riga 
120) e, subito dopo, verrà costantemente {riga 140) visualizzata 
Fora, preceduta da un breve messaggio (riga 130). 

Naturalmente Forano sarà quello disponibile al momento; 
volendo regolare l’orologio sarà sufficiente aggiungere la se- 
guente riga.., 

90 IN PUT' DIGITA L 'ORA ";T1$ 

...ricordandosi di rispondere, alla domanda, con le sei cifre re- 
lative, rispettivamente, ad ore, minuti e secondi. 

Ma ciò che interessava sottolineare a proposito del sempli- 
cissimo programma, era l'individuazione dello svolgimento 
contemporaneo di più programmi. 

Anzitutto, ovviamente, è in azione il programma Basic che, 
grazie al Goto di riga 140. permette di funzionare alFiniìnito. 
E’ attivo, inoltre, anche il programma che aggiorna di conti- 
nuo l'orologio interno del computer, e lo dimostra la variazio- 
ne continua dell'orario visualizzato; tale azione di aggiorna- 
mento. non prevista esplicitamente dal programma Basic, è 
assolta in modo '"trasparente” dallo stesso computer, vale a di- 
re, appunto, che il programmatore non deve preoccuparsi di 
creare una routine apposita, ma è sufficiente limitarsi a far vi- 
sualizzare la variabile TI$. 

Oltre a quelle viste è però attiva, in posizione di '‘all'erta ”, an- 
che la routine che esamina se per caso non sia stato premuto il 
tasto Run/Stop; lo dimostra il fatto che, se lo premiamo, il pro- 
gramma si arresta. 

Ira lasciamo, ovviamente, di considerare le numerose altre 
routine che sovrintendono alla gestione del video ed alle altre 
complesse procedure vitali per il corretto funzionamento 
del calcolatore. 

Il programma Basic, però, si limita a visualizzare costante- 
mente Fora c, anche se fossero presenti altre istruzioni "dopo” 
la riga 140. non potrebbero essere elaborate a causa del 
Goto 130. 

Esiste un modo per far elaborare altri programmi? 


XIV - Commodore Computer Club 




Due programmi in ti me sharing 


Supponiamo, ora, di voler deierminarc il numero di volte in 
cui è stato premuto un certo tasto, ad esempio il pasto più ( +). 
Pur se tale programma non risulta particolarmente utile, con- 
sideriamo una sua possibile versione che non commentiamo a 
causa della sua enorme semplicità. 

100 REM SECONDO PROGRAMMA 
110 : 

120 PRINT CHR$(147):REM CANCELLA SCHERMO 
130 GETAS.REM ESAMINA TASTO PREMUTO 
140: 

150 IF A $ = "+ ” THEN A =A + 1 
160 PRINT CHR$(19) 

170 PRINT " HAI PREMUTO IL TASTO + " 

180 PRINT A “ VOLTE" 

190 GOTO 130 

Questo listato assomiglia moltissimo a quello visto in prece- 
denza perchè (riga 19(1) continua all’in finito. L’artefice che 
consente un giro non-stop è l'istruzione Gel. (riga 530) che. se 
interpellata, assegna alla variabile designata (A$) il tasto pre- 
muto (o la stringa nulla in caso negativo) e prosegue 
nell’eia bora zio ne. 

Sf rutteremo proprio ('istruzione Gel per fondere i due pro- 
grammi studiati finora (e, visto che ci siamo, anche altri due) 
per realizzare l'illusione dell'elaborazione contemporanea di 
più programmi. 

Digitate il seguente listato, che commenteremo subito 
dopo: 

100 REM QUATTRO PROGRAMMI 

110 REM IN TIME- SHARING 

120 REM (QUALSIASI COMMODORE) 

130 : 

140 PRINT CHR$( 147): REM CANCELLA SCHERMO 
150 FOR X==l TO 8:X$ =X$ + CHR$(32):NEXT 
160 X$ = CHR$( 157) +X$ 

170 G ET A$: REM ESAMINA TASTO PREMITO 
180 : 

190 IL A$= ”+ " THEN A = 4 + 1:PI=P1+ E REM INIZIO PRO- 


XVI - Commodore Computer Club 



GRAMMI N.l E N. 2 

200 IF THEN A ~A-l;ME=ME +LREM ANCORA 

‘ ‘PROGRAMMA "N.l + ERG. N.3 

210 PRINT CHR$( 1 9) "SONO LE ORE:" TI$:REM QUARTO 
PROGRAMMA 

220 PRINT: PRINT "IL VALORE ATTUALE DIA E’: "A;XS: REM 
PARTE DI PRG N. 1 

230 PRINT: PRINT " HAI PREMUTO IL TASTO + "PI" VOLTE:": 
REM ULTIMA PARTE PRG. N.2 

240 PRINT HAI PREMITO IL TASTO - ” ME " VOLTE REM 
ULTIMA PARTE PRG . N.3 
250 : 

260 GOTO 1 70: REM CHIUSURA CICLO 

Anche ad un esame superficiale ci si può accorgere che i pro- 
grammi attivi stavolta sono ben quattro, pur se frammentati al- 
bi n terno di un unico, lungo listato. Trascurando la parte ini- 
ziale (righe 100-160) destinata ad inizializzare alcune variabi- 
li, possiamo approfondire lo studio dei quattro listati: 


• Il primo (parte delie righe 190 e 220) si incarica di determina- 
re il numero di volte in cui un certo tasto (ed esattamente il ta- 
sto “ + sia stato premuto. 

• Il secondo (righe 200 e 240) determina il numero di volte in 
cui il tasto meno è stato premuto. 

• Il terzo si incarica di effettuare, e visualizzare, la somma alce- 
brica del numero di volte in cui sono stati premuti i due tasti: 
ad ogni pressione del (+) la variabile “A" viene incrementata; 
il contrario avviene tutte le volte che si preme (-). 

• Il quarto programma si incarica (riga 210) di visualizzare co- 
stantemente l'ora. 


Impartendo il consueto Run. si potrà notare che, apparente- 
mente, solo il programma relativo alla visualizzazione dell'ora 
è attivo, mentre gli altri sembrano non entrare in gioco. 

Non appena, però, si preme uno dei tasti (+) oppure (-) ci si 
accorge, grazie alla immediata variazione dei valori visualiz- 
zati, che i programmi erano lì, in agguato, pronti a funzionare 
se ‘ chiamati" opportunamente. Anche premendo i due tasti 
(+) c (-) con una certa rapidità i risultatici inducono ad imma- 
ginare. con un minimo di fantasia, che i quattro programmi 
fu nzionino contempo ra nea mente, 


Commodore Computer Club - XV fi 




XVlit - Commodore Computer Club 













Esaminando il diagramma di flusso relativo, non possiamo 
fare a meno di notare che il ciclo, prima o poi, sì richiude su se 
stesso ed intuiamo che, esagerando neil'allungare il ciclo (in- 
serendo altre elaborazioni) ì due istanti successivi relativi ad 
uno stesso programma vengono distanziati eccessivamente fra 
loro; in tal caso non sarà più possibile “illudersi” di veder gira- 
re contemporaneamente i numerosi programmi e la rapidità 
di risposta diventerebbe intollerabile. 

Provate, infatti, ad aggiungere queste due righe al program- 
ma di prima... 


251 IFA$Q"+ "AND AND A$<)"" THEN FRI NT 'HAI 

PREMUTO UN ALTRO TASTO" 

252 PR1NT ” 

...che hanno il compito di accorgersi se sono stati premuti tasti 
diversi da (+) e (-). Impartendo il Run, e premendo piuttosto 
rapidamente molti tasti (tra cui. magari, anche (+) e (-). vi ac- 
corgerete che, dopo aver lasciato la tastiera, il programma non 
può più nascondere il tempo eccessivo che viene richiesto nel- 
l’elaborazione dei cinque programmi “contemporanei”. 

Abbiamo visto, quindi, che con un modesto home computer 
(che lavora, per giunta, in Basic) è piuttosto difficile organiz- 
zare un lavoro secondo una procedura che richiede la parti- 
zione di tempo (ma sarebbe più opportuno parlare, nel caso 
particolare, di partizione “di spazio”, più che di “tempo”). 

Un altro limite notevole che impedisce il ricorso intensivo 
all’istruzione Get, è sicuramente rappresentato dal fatto che, 
con tale istruzione, è impossibile, o quantomeno problema- 
tico. trasferire al computer un intero messaggio, oppure un 
numero, che richiedano la digitazione di più caratteri in 
successione. 

L'istruzione idonea a tale scopo è infatti Input che. però, al 
momento della sua attivazione, interrompe il programma 
Basic che viene ripreso solo alla pressione del tasto Return. 

Per dimostrare la difficoltà del caso si consideri il se- 
guente programma... 


100 REM DUE PROGRAMMI DI CUI UNO 
no REM CONTENENTE ISTRUZIONI INPUT 
120 : 


Commodore Computer Club - XIX 



1 


XX - Commodore Computer Club 


130 PRINT CHR$(14 7): REM CANCELLA SCHERMO 

140 GET A$:REM ESAMINA TASTO PREMUTO 

150 IF A$= "" THEN GOSUB 220.GOTO 140 

160 PRINT CHR$(147): GOSUB 220: PRINT 

1 70 INPUT ‘MINUENDO ”;Ml 

ISO INPUT’SOTTRAENDO ";S0: PRINT 

190 PRINT MI ‘ - ” SO "= ” MI- SO 

200 GOTO 140 

210 : 

220 PRINTCHR$(1 9) "SONO LE ORE: “17$ 

230 RETURN 

...che dovrebbe visualizzare costantemente l'ora oltre a con- 
sentire il calcolo di una sottrazione (righe 170-190). 

Non appena di impartisce il Run, infatti, l’ora viene visualiz- 
zala finché non si preme un tastp. A questo punto verranno 
richiesti il minuendo ed il sottraendo ma, finché non si preme 
per la seconda volta il tasto Return, il tempo non verrà più 
scandito istante per istante. E ovvio che, non appena si preme 
il secondo Return, verrà visualizzata fora aggiornata, dal 
momento che, anche durante la fase di Input, il vostro compu- 
ter ha provveduto ad aggiornarla in modo “trasparente". Viene 
però persa la caratteristica di contemporaneità e di tempo 
reale che contraddistingueva i programmi studiati in pre- 
cedenza. 

Lavorando in Basic, pertanto, la tecnica di pseudo-time sha- 
ring può essere adottata con successo solo durante la visualiz- 
zazione di un menu, quando, cioè, il programma principale 
attende l’indicazione di una preferenza. Nel caso non venga 
premuto alcun tasto è possibile approfittare per visualizzare 
l’ora, per cambiare continuamente i colori del bordo, per emet- 
tere dei segnali sonori e così via. 

L’iiiterrupt 

Esiste una tecnica particolare che viene spesso usata dai pro- 
grammatori per fare in modo che una certa routine venga 
usata continuamente durante l'uso normale del computer. 

Tale tecnica approfitta del fatto che, ogni sessantesimo di 
secondo, il microprocessore interrompe il lavoro che sia ese- 
guendo e salta ad eseguire alcuni controlli, verifiche ed altre 
"cose" necessarie per mandare avanti la baracca, 

Commodore Computer Club - XXI 



Naturalmente la procedura di In terni pt è trasparente per 
Putente finale che non si accorge minimamente delle frequen- 
tissime interruzioni. 

Ogni sessantesimo di secondo (caso del C/64) il micro salta 
ad eseguire una routine in linguaggio macchina il cui indi- 
rizzo di partenza (nella consueta forma basso/alto) è memo- 
rizzato nelle due locazioni adiacenti 788 e 789. Di solito, non 
appena si accende il C/64, in tali locazioni sono presenti, 
rispettivamente, i valori 49 e 234. Questi, combinati nella 
forma 234*256+49. forniscono il valore 59953 che, appunto, 
rappresenta findirizzo di partenza delia routine in linguaggio 
macchina richiamata ogni sessantesimo di secondo. 

Poiché i due puntatori 788 e 789 sono in una zona Ram, 
risulta relativamente semplice, per l'utente finale, modificarne 
il contenuto e fare in modo che una sua personale routine sia 
“attraversata" prima di compiere il solito giro di perlustra- 
zione allo scattare del sessantesimo di secondo. 

C'è solo da tener presente che la routine da inserire nel ciclo 
di Interrupt deve assolutamente terminare con l’istruzione di 
salto incondizionato JMP EA31; tale accorgimento è indi- 
spensabile perchè, appunto, il ciclo di interrupt non può fare a 
meno di essere eseguito. 

Si ricorda che EA31, tradotto in decimale, rappresenta pro- 
prio il numero 59953 prima visto. 

Poiché la routine da inserire deve, necessariamente, essere 
scritta in linguaggio macchina, verrà il momento in cui si 
dovrà alterare il puntatore 788/789. Se, però, eseguiamo la 
modifica, da Basic, per mezzo di istruzioni Poke, corriamo il 
rischio che. subito dopo aver eseguito la Poke relativa alla 
locazione 788, arrivi l'impulso di Interrupt che andrebbe ad 
eseguire la routine allocata in un indirizzo modificato... a 
metà! 

Per evitare questo inconveniente vi sono due strade: La prima, 
complicata, richiede fuso delle istruzioni L.M. che riguardano 
fintemi pt (CLI, SEI) che costringono il microprocessore a tra- 
scurare, oppure ad accettare, le richieste di interruzioni. 

Il secondo metodo, decisamente più semplice, consiste nel- 
l’allocare la nostra routine L.M. in una locazione che abbia, 
come parte bassa delfindirizzo nuovo, la stessa parte bassa 
(49) dell’indirizzo originario. In tal modo modificando, anche 
da Basic mediante Poke, la sola locazione 789. si renderà 
disponibile un efficace deviatore, governabile da Basic, che 

XXII - Commodore Computer Club 



renderà attiva, o meno, la nostra routine. 

In altre parole, se le due locazioni contengono normalmente 
49 e 234, faremo in modo che la nostra routine sia allocata a 
partire da 49201, indirizzo fornito dai due valori 49 e 192 
opportunamente combinati tra loro (192*256+49). 

Con tale semplicissimo accorgimento sarebbe possibile, ma 
solo in teoria, selezionare ben 256 cicli diversi di Interrupt 
limitandosi a modificare, mediante Poke, la locazione 789 e a 
patto, ovviamente, di scrivere altrettante routine nelle 256 
pagine di cui dispone il microprocessore. Ad approfondire tale 
discorso, però, potrebbero essere disponibili solo i lettori più 
esperti ed è questo il motivo per cui non andiamo oltre. 



Commodore Computer Club - XXII! 



Dal semplice al difficile 

Provate, ora. a digitare il seguente listato, e fatelo partire con 
un semplice Run. 

100 PRINT CHR$(147) 

105 A$=CHR$(32) + CHR$(32) 

110 PRINT CHR$(19): FOR 1=160 TO 162 
120 PRINT A$ STR$(PEEK{ l))A $;: NEXT 
130 PRINT: GOTO HO 

Rintracciare il motivo per cui si utilizzano tante istruzioni 
apparentemente superflue sarà un valido esercizio per il letto- 
re che voglia approfondire la gestione della visualizzazione di 
numerosi valori numerici su di uno stesso rigo. 

Ciò che vogliamo mettere in evidenza, invece, è solo il fatto 
che in un C/64 vi sono tre locazioni di memoria (160, 161 e 162) 
che sono interessate alla manipolazione del... tempo. 

Tutti dovrebbero sapere, inoltre, che è possibile visualizzare 
un carattere sullo schermo mediante istruzioni Pokc che inte- 
ressano l’area del video, allocata da 1 024 a 2023 (in esadeci ma- 
le da 0400 a 07E7). 

Un programma analogo a quello appena visto, che ricorra a 
Poke anziché a Print, pud essere il seguente: 

100 PIU NT CHR$(147) 

110 IOR 1=0 TO' 2 

120 POKE 1024+1. PEEK( 160+1) 

130 NEXT: GOTO L10 

Naturalmente quest'ultimo può presentare difficoltà di com- 
prensione rispet to al precedente perchè i tre caratteri visualiz- 
zati nelle prime tre celle video cambiano continuamente e sem- 
brano non avere alcun senso. 

Quest'ultimo programma, però, ha il vantaggio di essere fa- 
cilmente inseribile all interno di una routine di lnterrupt me- 
diante. ad esempio, il seguente programma Basic che contiene, 
al suo intemo, informazioni sufficienti per la comprensione 
del programma in linguaggio macchina: 


XXIV- Commodore Computer Club 




100 REM OROLOGIO NELL '1NTERR UVE 
110 REM LE TRE LOCAZIONI 
120 : 

130 READ X: IF X=-l THEN 150 
140 POKE 49201+ 1,X: 1=1+1: GOTO 130 
150 POKE 789.192: REM CAMBIA INTERRI IPT 
160: 

170 DATA 1 62. 3 :REM LDX*3 
180 DATA 181,159 :REM LDA.X *159 
190 DATA 157, 2 5 5, 3: REM STAX # 1023 
200 DATA 202 : REM DEX 

210 DATA 208,248 :REM BNE F8 
220 DATA 76, 49,234: REM JMP # 59953 
230 : 

240 DATA -LREM FINE DEI DAT4 

Sorvolando il commento sulle istruzioni L.M. (che richiede- 
rebbe un intero fascicolo) ci limitiamo ad evidenziare l’unica 
Poke necessaria per il dirottamento della routine di Interrupt e 
la riga 220 contenente i codici relativi al salto incondizionato 
JMPEA31 di cui abbiamo parlato in precedenza. 

Non appena fate partire il programma con un semplice Run 
vi accorgete che nelle prime tre locazioni dello schermo vengo- 
no costantemente visualizzati i tre caratteri che rappresentano 
il contenuto delle tre locazioni 160, 161 e 162. Ora, però, possia- 
mo utilizzare il computer per far girare altri programmi o per 
compiere altre operazioni: provate ad eseguire un List, a can- 
cellare righe, a scrivere un nuovo programma: durante tutte 
queste operazioni le prime tre celle video continueranno indi- 
sturbate a visualjzzare. a modo loro, l’ora in tempo reale. 

Con Ostruzione Poke 789.234 (oppure con la pressione di 
Run/Stop e Restore) si ripristinano i valori originali. 

Abbiamo con ciò dimostralo come sìa senapi ice(!) obbligare 
un qualsiasi computer a compiere più procedure in modo ap- 
pa re nteme nte contempo ra neo. 

Nei primi esempi abbiamo visto come, con il Basic, si mani- 
festino subito dei limiti inaccettabili. Possiamo ora affermare 
che. ricorrendo al Li nguaggio Macchina (cd in particolare alla 
manipolazione del vettore di Interrupt) è possibile risolvere il 
problema una volta per tutte? 


XXV/ - Commodore Computer Club 




Commodore Computer Cfub - XXVtl 




It caso si complica 

Vediamo che cosa succede se, anziché visualizzare solo tre 
locazioni, proviamo a visualizzarne ben 256: un programma 
perii C/64 può essere il seguente, che con sigliamo di trascrive- 
re dopo aver premuto i tasti Ru n/Stop e Resto ré: 

100 REM VISUALIZZA 256 BYTE IN INTERRUPT 

HO REM DOPPIO CICLO DI RITARDO 

120 : 

130 PRINT CHR${147) CONTO FINO A 10000 IN..'’;: GOSUB 
340: PRINT" SECONDI ” 

140 PRINT: PRINT "PREMI UN TASTO PER CON- 
TINUARE" 

150 GETA$: IF A$=”’’ TtìEN 150 
160 : 

170 READ X: IF X=-l THEN 190 
180 POKE 49201+ IX: 1=1+1: GOTO 170 
190 POKE 789,192: REM CAMBIA INTERRUPT 
200 : 

220 DATA 162,255 :REM LDX#255 
230 DATA 181.0 :REM LDA.X $0 
240 DATA 1 5 7,255. 3: REM STA.X &I023 
250 DAÌA 202 :REM DEX 
260 DATA 208,248 :REM BNE F8 
290 DATA 76,49,234:REM JMP # 59953 
300: 

310 DATA -1:REM FINE DEI DATA 

320 FOR 1 = 170 10: PRINT: NEXT 

330 PRINF MENTR E ORA IMPIEGO... ”;:GOSUB340:END 

340 TI$= '0000007 FOR A=1 TO 10000: NEXT: PRINT TU;: 

RETURN 

Poco dopo il Run la parte superiore dello schermo, ed esatta- 
mente le prime sei righe per intero e i primi 14 byte del settimo 
rigo (per un totale di 256 caratteri) si riempono di caratteri ap- 
parentemente casuali. In effetti rappresenta la radiografia, in 
tempo reale, della prima “pagina" di memoria in cui, oltre alle 
già note locazioni 160, 161 e 162, vi sono altre locazioni che so- 
vrintendono a particolari funzioni: provate, quando ricompa- 
re il familiare READY, a premere e rilasciare il tasto Control, 
oppure a far salire e scendere il cursore o a premere Run/Stop: 


XXVUf - Commodore Computer Club 


so avete pazienza (ed una mappa di memoria), potete indivi- 
duare la locazione interessata alle singole operazioni ac- 
cenate. 

Ma ciò che volevamo mettere in evidenza non era ta nto un si- 
stema per radiografare una pagina di memoria ma, soprattut- 
to. il fatto che anche lavorando in linguaggio macchina, noto- 
riamente ipervclocc, sì accusano alcuni rallentamenti che pos- 
sono diventare intollerabili. 

A parte, infatti, il tempo nettamente maggiore che il compu- 
ter impiega per contare da 1 a 10000, ci accorgiamo che alcune 
semplici operazioni vengono svolte in tempi maggiori; provate 
a dare un comando dì List e ve ne accorgerete. 

Se poi, dopo avere premuto Run/Stop c Restorc. aggiungete 
le seguenti linee... 

210 DATA 160,4 REM LDY#4 
270 DATA 136 : REM DEY 
280 DATA 208,243 :REM BNE F$ 

-.che, facendo intervenire il registro Y. costringono a visualiz- 
zare quattro volte la pagina zero, vi accorgerete di un incredì- 
bile rallentamento delle operazioni, avvertìbile perfino nello 
spostare il cursore: nella fase dì List, addirittura, è possibile 
notare la particolare tecnica seguita dal computer perla realiz- 
zazione dello scrolling* 



Comma dorè Computer Club - XXIX 



Che fare? 


Da quanto detto possiamo quindi concludere che la possibi- 
lità di far funzionare più programmi in contemporanea si 
scontra, prima o poi, con le caratteristiche peculiari del siste- 
ma adoperato. 

Pur ricorrendo a tecniche di programmazioni pregevoli, in 
grado di risparmiare lino all’ultimo byte, e metodologie sofisti- 
cate, che sfruttano al massimo le risorse del microprocessore, 
non ò pensabile andare oltre un certo limite, superato il quale 
si può addirittura provocare il crash del sistema. 

Ecco quindi il motivo per cui non è importante avere a dispo- 
sizione vaste quantità di memoria o disporre di linguaggi in 
grado di svolgere funzioni incredibilmente complesse; è fon- 
damentale, soprattutto, individuare la massima velocità rag- 
giungibile dal micro (in termini di megahertz), la sofisticazio- 
ne delle istruzioni di cui dispone, il numero di cicli macchina 
che richiede per svolgerle e, in ultima analisi della quantità di 
tecnologia che contiene. 

Il caso dell’ Amiga 

Non potevamo certo fare a meno di ricorrere ad un confronto 
illuminante che meglio di ogni altro chiarisse che cosa si in- 
tenda con il termine “multiprogramm azione” (e analoghi). 

L'Amiga è un computer la cui caratteristica peculiare è, ap- 
punto, la capacità di multiprogrammazione. 

Anche chi non possiede un Amiga avrà sicuramente avuto 
occasione di vederne in funzione un esemplare, almeno una 
volta. A coloro che, sfortunati, non appartengono a tale schiera, 
ricorderò semplicemente che tra i vari file forniti in omaggio 
con r Amiga c presente un programma dal nome chiarificatore 
“Clock" (orologio) che, se attivato, consente di tener visualiz- 
zato costantemente un orologio digitale (oppure analogico) 
con tanto di lancette relative alle ore, ai minuti e ai secondi; è 
addirittura possibile spostare la finestra delforologio in qual- 
siasi zona dello schermo con il mouse. 

Ciò significa che, a parte la possibilità di modificare entro 
ampi limiti le dimensioni dello stesso orologio (in altezza e 
larghezza), sarà possibile visualizzare costantemente il qua- 
drante, in tempo reale, anche durante l'esecuzione di altri pro- 
grammi, scritti in qualsivoglia linguaggio. 

e 

XXX - Commodore Computer Club 



Soffermiamoci alcuni istanti permeglio comprendere firn- 
mane lavoro che l'Amiga è chiamata a compiere per riuscire 
nelfintento: la finestra dell’orologio è in alta risoluzione; ne 
deriva che. istante per istante, il microprocessore dovrà cancel- 
lare la lancetta dei secondi dalla posizione precedente e rico- 
struirla dopo aver determinato l’angolo, descritto in senso ora- 
rio, tenendo conto delle dimensioni della finestra c del rappor- 
to tra lunghezza e larghezza che, lo ricordo, possono esser va- 
riati a piacere dall'utente in qualsiasi momento con il semplice 
movimento del mouse. 

Quando due lancette si sovrappongono (e ciò capita alla lan- 
cetta dei secondi due volte per ciascun giro) bisogna tener con- 
to che, dopo lo spostamento, bisogna far ricomparire anche la 
lancetta dei minuti (o delle ore, a seconda dei casi). 

Con un C/64 tale operazione potrebbe certamente essere 
svolta ricorrendo alla grafica in alta risoluzione; dubito, però, 
che l’orologio possa essergestito con facilità se posizionato al- 
fintemo di un ciclo di Interrupt... ~ 

Con l’Amiga è possibile caricare più volte il programma 
Clock e visualizzare contemporaneamente più orologi, di for- 
ma e dimensione diverse, che battono all’unisono. 

Tanto per rendersi conto della reale multiprogramniazionc 
di cui è capace l’Amiga, tenete presente che, per prova, ho cari- 
cato ben 14 (quattordici) orologi, ed ho conferito, ad ognuno di 
loro, diversa forma e dimensione. 

Ebbene è necessario stare molto, ma molto attenti per accor- 
gersi che. in effetti, -la lancetta dei secondi non è sistemala nella 
stessa posizione in un determinato istante, ma si riesce ad indi- 
viduare uno sfasamento provocato dal fatto che gli orologi so- 
no azionati alternativamente, l’uno dopo l’altro. 

Se non è multiprogrammazione questa, sapete indicarmi un 
computer in grado di raggiungere una rapidità di multipro- 
grammazione comparabile con quella dell’Amiga?... 



Commodore Computer Club - XXXI 




- XXX// Commodore Computer Club